gpt4 book ai didi

c++ - 如何使用 cmake 将文件夹路径包含到 C/C++ 程序中

转载 作者:搜寻专家 更新时间:2023-10-31 02:12:50 24 4
gpt4 key购买 nike

我的 C++ 程序需要一个文件夹路径,我喜欢从 cmake 配置中输入。比如我的c++程序是

int main(){
std::string pretrained_binary_proto("/home/Softwares/Libraries/caffe-master/models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel");
}

我喜欢使用 cmake 设置此文件夹路径。

/home/Softwares/Libraries/caffe-master/models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel

在我的 CMakeLists.txt 中,我有

set(CAFFE_MODEL_PATH         "/home/nyan/Softwares/Libraries/caffe-master/models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel")

但我在我的 ccmake.. 配置中没有看到 CAFFE_MODEL_PATH。那么我怎样才能将该路径包含到我的程序中呢?

最佳答案

“简单”的方式:

add_definitions(-DCAFFE_MODEL_PATH=\"${CAFFE_MODEL_PATH}\")

然后在代码中使用CAFFE_MODEL_PATH常量。


如果你有很多这样的定义,更优选的方法:

  1. 使用 #cmakedefine CAFFE_MODEL_PATH 等内容创建 yourproject-config.h.cmake
  2. 使用configure_file(yourproject-config.h.cmake yourproject-config.h)
  3. 不要忘记include_directories(${CMAKE_CURRENT_BINARY_DIR})
  4. #include "yourproject-config.h" 无论何时何地您需要访问常量。

关于c++ - 如何使用 cmake 将文件夹路径包含到 C/C++ 程序中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42196905/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com