1

我正在尝试在 64 位 13.04 ubuntu 上编译 32 位版本。

我已经安装了正确的 multiarch g++ 库和 ia32-libs 包。我可以看到.so我需要/usr/lib/i386-linux-gnu/lib32/

到目前为止我的方法:

export QMAKESPEC=linux-g++-32
qmake myproject.pro
make

我注意到我是用-m32标志编译的,但是在链接时间方面,我看到/usr/lib/x86_64-linux-gnu. 这不是从任何.pro文件中设置的,我快速确认

grep -r 'x86_64-linux-gnu' <src>

我觉得我在某处遗漏了一个标志,或者它使用了错误的 g++,我需要调整链接?我找不到这方面的任何信息。


链接调用:

g++ -m32 -Wl,-O1 -o output [redacted.o] -L/[some_lib_dir] -L/usr/lib/x86_64-linux-gnu -lQtCore -lpthread 
4

1 回答 1

0

我不得不切换到 Ubuntu 32 位。我确定问题是 qmake 不允许您为其核心插件库设置链接目录。

其他有兴趣研究的人研究:

qmake -query
qmake -set QT_INSTALL_PATH

那似乎是正在使用的链接目录,但我无法指定我自己的 unqiue 目录。

于 2013-10-23T18:22:03.340 回答