如何在qmake中配置编译器

时间:2017-09-05 14:44:13

标签: c++ qt

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

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

标记是解析某些未定义引用所必需的。现在我按如下方式设置我的.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中重建所有内容并在控制台中构建时解决的未定义引用未解决...不知怎的,我的标志被忽略了?

1 个答案:

答案 0 :(得分:2)

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

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

CONFIG += c++11