2

Qt (Windows 環境) で開発されたコードがあり、それを Linux でコンパイルしたかったのですが、ライブラリにいくつかの違いがあることに気付き、そのうちの 2 つを見つけることができましたが、残りを見つけることができませんでした..この問題を経験したことがある人の助けを求めたい:

Windows の場合:

LIBS += -lopengl32 \
-lglu32 \
-lcomdlg32 \
-lQAxServerd \
-lphonond4

Linux へ:

LIBS += -lGL \
-lGLU \

今は QAxserver です..私の QT 環境にはありません。ダウンロードできる場所が見つかりませんでした。

4

2 に答える 2

3

QAxServer は、「ActiveQt」と呼ばれる Qt の ActiveX モジュールの一部です。ActiveX は、Microsoft による Windows 専用のフレームワークです。他のどこにも実装されていません。同等のものはありません。そのモジュールをアプリケーションで使用すると、そのアプリケーションは Windows 以外のプラットフォームに移植できなくなります。

comdlg32 についても同様です。これは、Microsoft による Windows ライブラリです。ポータブルではありません。アプリケーションがこれを直接呼び出す場合は、その部分を再実装する必要があります。

phonond4 は Qt の Phonon モジュールです。それはポータブルです。リンクする必要はありません。QT += phononプロジェクトファイルに追加するだけです。

つまり、Windows 固有のライブラリを呼び出すアプリケーションのすべての部分を再実装する必要があります。

于 2013-06-26T15:20:18.300 に答える
0

your_project.pro ファイル内:

win32 {
    LIBS += \
        -lopengl32 \
        -lglu32 \
        -lcomdlg32 \
        -lQAxServerd \
        -lphonond4
}
linux {
    LIBS += -lGL -lGLU
}
于 2015-09-20T21:41:25.573 に答える