qmake-查询Linux中的内部设置-它们在哪里?

我正在使用ptxdist使用交叉编译器构建Linux系统.它允许我配置Qt4进行安装,并且可以构建和安装qt-everywhere-opensource-src-4.6.3.但是,qmake内部设置搞砸了,我不知道如何解决它们.

当我运行qmake -query时,我得到:

me@ubuntu:~$qmake -query
QT_INSTALL_PREFIX:/
QT_INSTALL_DATA:/
QT_INSTALL_DOCS://doc
QT_INSTALL_HEADERS://include
QT_INSTALL_LIBS://lib
QT_INSTALL_BINS://bin
QT_INSTALL_PLUGINS://plugins
QT_INSTALL_TRANSLATIONS://translations
QT_INSTALL_CONFIGURATION:/etc/xdg
QT_INSTALL_EXAMPLES://examples
QT_INSTALL_DEMOS://demos
QMAKE_MKSPECS://mkspecs
QMAKE_VERSION:2.01a
QT_VERSION:4.6.3

通过一些研究,似乎可以通过简单地重建Qt来解决此问题,但并不能解决此问题.我对构建输出进行了一些挖掘,它看起来像Qt构建的./configure命令具有“ -prefix / usr”,所以我不知道为什么这个问题没有得到解决.

我想尽可能地手动修复这些内部值,因为Qt构建需要花费数小时.有谁知道如何做到这一点?

最佳答案
在配置时,这些路径被硬编码在“ src / corelib / global / qconfig.cpp”中,并且在构建时最终被硬编码到qmake中.它们也被硬编码到许多其他文件中,例如所有.la和.pc文件,更不用说Makefile安装规则了.

解决此问题的唯一方法是弄清楚为什么configure会不断弄乱前缀. configure是一个很大的shell脚本,因此很容易看到从’-prefix’参数分配$QT_INSTALL_PREFIX的位置,然后对其进行不同的检查(例如通过’config.tests / unix / makeabs’运行它) .尝试在$QT_INSTALL_PREFIX更改之前/之后放置打印语句,您应该能够找出路径的错误位置.

另外,您不必等待完整的构建完成即可知道是否设置了前缀
正确地.配置运行后,查看“ src / corelib / global / qconfig.cpp”,并查看“ qt_configure_prefix_path_str”设置为什么.

转载注明原文:qmake-查询Linux中的内部设置-它们在哪里? - 代码日志