我正在查看Qt提供的configure
脚本可以运行的所有选项。(具体而言,qt-everywhere-opensource-src-5.2.0)。
经过大量的搜索后,我发现这些东西最多只能记录在案,所以我希望能得到一些帮助。当我查看prefix
和sysroot
配置选项的描述时:
~/qt-everywhere-opensource-src-5.2.0$ ./配置-help x grep "sysroot“ -extprefix
<dir>
..。当使用-sysroot时,将所有东西安装到<dir>
中, -sysroot<dir>
.将<dir>
设置为目标编译器和qmake的sysroot,并设置pkg-config路径。 -不-gcc.当使用-sysroot时,它禁止将--sysroot传递给编译器~/qt-everywhere-opensource-src-5.2.0$ ./配置-help \ grep“前缀”。 -prefix<dir>
.这将安装与<dir>
相关的所有内容 -extprefix<dir>
..。当使用-sysroot时,将所有东西安装到<dir>
中, -hostprefix dir .开发所需的工具和库
所以我以前使用过-prefix
,它做的和描述的完全一样。它将所有内容放在提供的<dir>
上,然后当我使用<prefix_dir>/bin/qmake
构建应用程序并将其安装在目标平台上时,它希望在<prefix_dir>/lib
中找到所有共享对象库。
我的印象是,如果我使用-sysroot
,它将安装在<sysroot_dir>
上的所有东西,然后当我在目标平台上安装应用程序时,它将在/lib
中搜索。至少我希望这是真的。
如果我的假设是正确的..。那么-extprefix
的意义是什么呢?他们是在说,如果我同时使用-sysroot
和-extprefix
,就能把好的地方重定向到什么地方?
我想使用-no-gcc-sysroot
的原因是什么?如果我希望我的Qt库安装在" sysroot“中,为什么我不希望gcc
使用/知道相同的sysroot呢?
如果我能得到一些如何正确使用这些选项的实际例子,那么对其中一些选项的解释将是非常棒的,甚至更好。
发布于 2015-03-29 12:11:02
这些选项是在构建嵌入式平台时使用的。是的,他们是王室的乱局。因此,这里只有一个部分的答案:
-prefix
-sysroot /path
-extprefix /b
-不-gcc
-hostprefix /path
为了增加混乱:
-R /path
在为目标(而不是您的主机)编译时,要使用哪些标志,取决于配置中大量硬编码的假设。
通常,-sysroot + -prefix应该适用于大多数用例。
即当你有:
$ ls ~/mytarget
lib bin share dev
您可以使用-sysroot ~/mytarget -prefix /
https://stackoverflow.com/questions/22540239
复制相似问题