我正在使用x86工具链在Qt Creator 3.4.0(opensource)中构建二进制文件。有一个/usr/bin/gcc
和一个<path-to-toolchain>/i686-atom-linux-gnu-gcc
,我想使用i686-atom-linux-gnu-gcc
。
Compiler path
中的Build&Run->Compilers->Compiler path
正确设置为指向i686-atom-linux-gnu-gcc
。
当我尝试观察Makefile中的哪些命令被执行时,它总是显示编译器是gcc
,而它应该有一个编译器前缀(i686-atom-linux-gnu-gcc
)。
更新
使用参数-spec linux-g++
调用qmake调用。但是,在工作版本上,此值对应mkspec
中的Build&Run->Qt versions->Details
。
在项目选项中选择了正确的kit
。我是否想知道某些事情或者它可能是Qt Creator中的一个错误?
答案 0 :(得分:1)
问题在于错误的默认-spec linux-g++
参数。 Doe生成的Makefile具有默认的PC工具链,而不是Kit中选择的工具链。
在-spec qws/linux-ptx-g++
中手动添加Projects->Additional arguments:
后,生成的makefile使用正确的编译器。
我从qws/linux-ptx-g++
Options->Build&Run->Qt Versions->"your Qt version"->Details->mkspec
这是一个试验和错误发现的答案,我很乐意接受另一个可以解释这种行为。