在Linux中编译Windows Qt代码和库中的更改

时间:2013-06-26 15:13:46

标签: c++ linux windows qt

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

Windows中的

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

到Linux:

LIBS += -lGL \
-lGLU \

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

2 个答案:

答案 0 :(得分:3)

QAxServer是Qt ActiveX模块的一部分,名为“ActiveQt”。 ActiveX是Microsoft的Windows专用框架。您将无法在其他任何地方找到它。没有等价物。如果在应用程序中使用该模块,该应用程序将无法移植到非Windows平台。

comdlg32也是如此。这是Microsoft的Windows库。它不便携。如果应用程序直接调用此方法,则需要重新实现该部分。

phonond4虽然是Qt的Phonon模块。这是便携式的。您无需链接到它。您只需在项目文件中添加QT += phonon

简而言之:您需要重新实现调用Windows特定库的应用程序的任何部分。

答案 1 :(得分:0)

在your_project.pro文件中:

win32 {
    LIBS += \
        -lopengl32 \
        -lglu32 \
        -lcomdlg32 \
        -lQAxServerd \
        -lphonond4
}
linux {
    LIBS += -lGL -lGLU
}