2017-08-22 30 views
2

私はこの質問に類似するものがこれまでにここで求められていることは知っていますが、私の状況は少し異なります。64ビットLinux OSでの32ビットQtアプリケーションのコンパイル

私は64ビットのOSを持っています。私は両方のi686とx86_64 qt開発パッケージがインストールされている。私は32ビットバイナリをコンパイルしたいと思います。私は、.proファイルに

を追加しました。しかし、(i686のパッケージからqmakeのを使用して)生成されたMakefileはまだ

CFLAGS = -m32 [...] -m64 [...] 
INCPATH = -I/usr/lib64/qt-3.3/mkspecs/default 
Makefile: MyApp.pro /usr/lib64/qt-3.3/mkspecs/default/qmake.conf /usr/lib64/qt-3.3/lib/libqt-mt.prl 

すなわち、64ビットの参照を使用して私が間違って何をしているのですか? (Oracle Linux 6.9、Qt 3.3、gcc 4.4.7)

+0

受け入れ可能なQtバージョンのために 'qmake'をまず実行してください。 '* .pro'ファイルに変更を加えずに目的のターゲットをアーカイブするのに十分なはずです。 –

+1

[qmake documentation](http://doc.qt.io/qt-5/qmake-running.html)に基づいて、受容可能なQtディレクトリで '-spec'スイッチを使ってqtのバージョンを指定することができます。ここで' qmake.conf'ファイルがあるか、またはプラットフォームとコンパイラの組み合わせの名前([QMAKESPEC docを参照](http://doc.qt.io/qt-5/qmake-environment-reference.html#qmakespec))。 –

答えて

2

私は長い時間の後に答えに遭遇しました。私はからの環境変数のセットを変更しなければならなかった

QTDIR=/usr/lib64/qt-3.3 
QTINC=/usr/lib64/qt-3.3/include 
QTLIB=/usr/lib64/qt-3.3/lib 

QTDIR=/usr/lib/qt-3.3 
QTINC=/usr/lib/qt-3.3/include 
QTLIB=/usr/lib/qt-3.3/lib 

そして、私の.PROファイルに以下を追加します(私はx86_64版のgccのパッケージを使用していますので)

QMAKE_LFLAGS += -m32 
QMAKE_CXXFLAGS += -m32 
関連する問題