Qt构建发布和调试库

时间:2016-04-26 04:13:23

标签: c++ qt qmake

我需要将Qt SDK安装到没有GUI的Redhat后端机器上。 (亚马逊ec2)。当我尝试安装时由于无法连接显示而失败。

然后我尝试下载源码并编译。如果我使用configure -debug,它只编译调试库。与它仅在我指定-release时编译和安装发布二进制文件相同。同样在我的* .pro文件中它链接最后安装的构建而不考虑CONFIG + = debug或CONFIG + = release

我需要两种格式。 libQt5Core.so和libQt5Core.d.so。并且需要根据CONFIG链接单独的库。

2 个答案:

答案 0 :(得分:3)

我解决了这个问题。

  • 首先我配置configure -debug -qtlibinfix .d并安装。
  • 然后我配置configure -release并重新安装。

现在我有两个二进制文件*.d.so用于调试,*.so用于在/usr/local/Qt-5.6.0中发布。

然后编辑/usr/local/Qt-5.6.0/mkspecs/features/qt.prf并替换

MODULE_MODULE = $$eval(QT.$${QTLIB}.module)

MODULE_MODULE =
    debug: MODULE_MODULE = $$eval(QT.$${QTLIB}.module).d
    else: MODULE_MODULE = $$eval(QT.$${QTLIB}.module)

如果我在* .pro文件中使用了CONFIG += debug,则会链接到*.d.so。否则它会与*.so链接。

答案 1 :(得分:1)

如果您需要两组库,可以使用configure -debug-and-release选项。请查看Configuration Options for Qt了解更多选项。