我正在尝试使用https://github.com/haithngn/cryptor之类的https://github.com/MailCore/mailcore2来制作C ++跨平台密码库
结构为:
我可以使任何头文件包含在这样的语句中吗?
#include <Cryptor/MD5Encryptor.h>
我可以直接从绝对文件路径中包含这些标头
../core/CryptorCore.h
但是这些格式会使源代码无法在XCode项目中成功构建。
我试图模拟MailCore2,但这非常困难。
希望您可以向我建议任何解决方案,或者在我的存储库上进行帮助PR。
谢谢
答案 0 :(得分:0)
您需要具有适当的层次结构。首先,不,你不能拥有
#include <Cryptor/MD5Encryptor.h>
使用您当前的设置,而不是在构建库时,并且在安装文件时(如果不使用CMake可以不弄平层次结构)。
您可以做的是:
#include <Cryptor/core/abstract/MD5Encryptor.h>
如果您将项目添加到Cryptor
文件夹中,而不是位于项目的根目录中。
我建议您创建一个Cryptor.cmake
文件,该文件允许人们在安装后拾取您的库,这样他们就不必知道库所在的位置或库的名称。
答案 1 :(得分:0)
没有必要指向每个头文件。只需使用include_directories(PATH_TO_HEADERS)
添加包含这些头文件的所有目录。
对于包含头文件src / core / CryptorCore.h的
#include "CryptorCore.h"
您必须指向
include_directories(${PROJECT_DIR}/core/)