2

我有一个在 Qt(Windows 环境)中开发的代码,我想在 Linux 中编译它,我注意到有一些差异库,我可以从中找出两个,但我没能找到其余的..我想向遇到此问题的任何人寻求帮助:

在 Windows 中:

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

到 Linux:

LIBS += -lGL \
-lGLU \

现在为 QAxserver .. 我的 QT 环境中没有它,我找不到可以下载它的地方!

4

2 回答 2

3

QAxServer 是 Qt 的 ActiveX 模块的一部分,称为“ActiveQt”。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 回答