gpt4 book ai didi

c++ - 使用 Clang++ 编译会忽略 CMAKE_INCLUDE_PATH

转载 作者:行者123 更新时间:2023-11-30 02:51:39 25 4
gpt4 key购买 nike

我正在尝试在 OS X 上使用 clang++ 和 CXX_FLAGS“-Wall -stdlib=libc++ -std=c++11”编译一个 c++ 项目。该项目是一个 CMAKE 项目,需要包含 cln 和 ginac。但是,当我给出这样的包含语句时,编译器找不到相应的 header :

#include <cln/cln.h>

#include <ginac/ginac.h>

尽管这两个库都安装在/usr/local/lib 中,并且存在它们的包含目录(/usr/local/include/cln 和/usr/local/include/ginac)。我试过了

set(CMAKE_INCLUDE_PATH /usr/local/include/cln:/usr/local/include/ginac )

但它没有显示任何效果,错误消息保持不变:

fatal error: 'ginac/ginac.h' file not found
#include <ginac/ginac.h>
^

更新:

我设法为详细添加了编译器标志,这告诉我,clang 搜索所需 header 的路径是错误的,因此问题似乎归结为如何更改这些路径的问题:

#include "..." search starts here:
#include <...> search starts here:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/5.0/include
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks (framework directory)
End of search list.

而所需的 header 仍在/usr/local/include 中。

更新 2添加 CXX_FLAG

-I/usr/local/include

解决了问题 - 我在哪里可以将其全局设置为默认值?

最佳答案

添加 CXX_FLAG

-I/usr/local/include

解决问题。

关于c++ - 使用 Clang++ 编译会忽略 CMAKE_INCLUDE_PATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19559448/

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