gpt4 book ai didi

c++ - 从命令行调用时将包含目录添加到 CMake

转载 作者:IT老高 更新时间:2023-10-28 21:46:23 27 4
gpt4 key购买 nike

我现在不应该打扰现有的 CMakeLists.txt 文件,但我仍然应该在我的构建中添加一些 g++ 系统包含目录。

换句话说,我需要 -isystem /path/to/my/include添加到我的编译器标志中,但是当调用像 cmake .. 这样的东西时.

也许像 cmake .. -DCMAKE_CXX_FLAGS="$CMAKE_CXX_FLAGS -isystem /path/to/my/include" ?有没有办法做到这一点?

最佳答案

我也有同样的问题。我找到了两个解决方案:

  1. one proposed by sakra in a previous answer ,即使用 C++ 标志设置环境变量:

    export CXXFLAGS=-isystem\ /path/to/my/include
    cmake <path to my sources>

    OR 相同,但仅为此 CMake 调用设置环境变量:

    CXXFLAGS=-isystem\ /path/to/my/include cmake <path to my sources>

    重要提示:您必须在启动任何此表单之前清理构建目录(即清理 CMake 缓存)。在不清理缓存的情况下,CMake 将继续使用您上次运行时缓存的 CMAKE_CXX_FLAGS

  2. 直接在cmake字符串中设置CMAKE_CXX_FLAGS:

    cmake -DCMAKE_CXX_FLAGS=-isystem\ /path/to/my/include <path to my sources>

我相信它可以通过更“原生”的方式来完成,但我没有找到负责 CMake 中 header 路径的变量。

关于c++ - 从命令行调用时将包含目录添加到 CMake,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25849571/

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