我的目标是将我的Qt项目添加到Jenkins构建服务器中,以进行每晚构建。因此,我想从命令行编译我的项目。我复制了位于构建配置中的构建步骤:
"/opt/fslc-x11/2.5/sysroots/x86_64-fslcsdk-linux/usr/bin/qt5/qmake" "/home/xxxx/repositories/xxx/xxx.pro" -spec linux-oe-g++ && /usr/bin/make qmake_all
"/usr/bin/make"
我在构建目录中执行这些命令。问题出在qmake命令上。 qmake命令生成makefile,但是当我在命令行而不是QtCreator中生成它时,该makefile是不同的。当然,生成后的二进制结果也大不相同。
似乎在命令行中的qmake命令创建了一个调试makefile,而不是发布makefile:
CFLAGS = -pipe -02 -pipe -g -feliminate-unused-debug-types --sysroot=.........
-02 -pipe -g -feliminate-unused-debug-types
部分是我在命令行中运行qmake时唯一添加的内容(已通过diff检查)。
我尝试了以下操作:
CONFIG+=release
添加到了qmake命令中CONFIG-=DEBUG
添加到了qmake命令中此外,我已经验证了系统环境和终端仿真器是相同的。
我的问题归结为:
让我知道是否需要有关设置或生成的Makefile的更多信息。
答案 0 :(得分:0)
好的。长话短说:我已经尝试使用标准qmake为本地Linux发行版进行编译,而我的问题已解决。
似乎问题出在目标(x86_64-fslcsdk-linux)的自定义qmake上。我不会在这个问题上花更多的时间,所以随时添加一个更令人满意的答案。我很乐意尝试一下:)。