我有一个由#define
指令分支的代码,例如:
#ifdef USE_LIB_CRYPTO
#include <openssl/evp.h>
#else
#include <cryptopp/pwdbased.h>
#include <cryptopp/sha.h>
#endif
根据已定义的USE_LIB_CRYPTO
,我应该添加
LIBS += -lcrypto
或
LIBS += -lcryptopp
我该怎么做?例如,这应该通过以下方式控制:
qmake ./ DEFINES + =“USE_LIB_CRYPTO”
所以我需要以某种方式检查传递给qmake的define
并链接到我需要的库。
答案 0 :(得分:1)
您可以使用qmake的contains
测试功能。
contains ( DEFINES, USE_LIB_CRYPTO ){
LIBS += -lcrypto
} else {
LIBS += -lcryptopp
}