Qt定义类似于-D的变量

时间:2016-05-09 14:13:15

标签: c++ qt ldap

正如标题所示,我需要用一些库编译我的Qt代码,并需要定义一些变量。更具体地说,我正致力于支持ldap身份验证。

在普通的C ++中,我通过编译命令

实现了它
g++ -I/home/user/development/openldap/include -L/home/user/development/openldap/lib/ -DLDAP_DEPRECATED main.cpp -o ldap -lldap

不幸的是,当我尝试在.pro文件中定义此变量时,如DEFINES + = LDAP_DEPRECATED,那么它找不到对ldap库的任何引用。

有谁知道,应该在哪里定义?

1 个答案:

答案 0 :(得分:2)

您在更改后运行了qmake吗?我相信DEFINES += LDAP_DEPRECATED会在您将更改保存到.pro文件并单击"运行qmake"之后重建时导致编译器被-DLDAP_DEPRECATED调用。从构建菜单。您正在使用正确的方法在QMake项目文件中定义预处理程序变量。

但是,对于其他命令行选项,您似乎也需要这些:

# LDAP Support
DEFINES += LDAP_DEPRECATED
INCLUDEPATH += /home/user/development/openldap/include
LIBS += -L/home/user/development/openldap/lib/ -lldap

顺便说一句,LIBS的语法也可以在Windows上使用,-L参数将被转换为库目录,-l转换为库文件名。< / p>