c++ - 如何在 qmake 中配置编译器

标签 c++ qt

我在配置 qmake 项目以与控制台中的命令相同的方式构建/编译时遇到问题。从控制台编译的工作命令是:

g++ main.cpp -std=c++11 -luWS -lz -lssl

这些标志对于解析一些 undefined reference 是必需的。现在我设置我的 .pro 文件如下

QT += core
QT -= gui
TARGET = car_mpc_ex
CONFIG += console
CONFIG -= app_bundle
QMAKE_CXXFLAGS += -std=c++11
QMAKE_CXXFLAGS += -luWS
QMAKE_CXXFLAGS += -lz
QMAKE_CXXFLAGS += -lssl
SOURCES +=
    main.cpp
    [...]
DISTFILES +=

HEADERS +=
    [...]

在 QT Creator 中重建所有内容,并且 undefined reference 在控制台中构建时已解决,但未解决...不知何故,我的标志被忽略了?

最佳答案

QMAKE_CXXFLAGS 用于编译器标志,而库应指定为链接器标志。这是通过 LIBS 完成的变量(或带有 QMAKE_ 前缀 QMAKE_LIBS 的等效变量,您不需要使用该变量)。

此外,必须为编译器和链接器指定 C++11 选项,但您可以使用 qmake CONFIG变量以更可移植的方式处理它:

CONFIG += c++11

关于c++ - 如何在 qmake 中配置编译器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46057766/

相关文章:

python - 如何使用用于 clang 工具的 python 绑定(bind)来判断类/结构是可复制的

c++ - 为 QProgressBar 上的图像设置着色

c++ - QtCreator : Target debug/. ..obj 不存在

python - pyqt 条码扫描器行编辑

c++ - QTextEdit : how can I modify text being pasted into editor?

c++ - 如果你在 vector 拷贝中放一个常量会怎样?或移动?

c++ - 如何在 Eigen 中翻译矩阵(4x4)?

c++ - 无法获取字符串的长度

c++ - 当类想要耦合

python - 在两个不直接相关的小部件之间进行通信