-->

#包括 未找到(#include not found)

2019-10-18 16:46发布

我已经从源代码编译的FreeImage并安装它。

当我运行sudo make install在安装我的系统上的以下文件

/usr/local/include/FreeImage.h
/usr/local/lib/libfreeimage-3.10.0.dylib
/usr/local/lib/libfreeimage.a

然而,在我的C ++程序,它说error file not found当我这样做:

#include <FreeImage.h> 

我曾尝试添加该到我的系统路径文件:

sudo vi /etc/paths

#FreeImage
/usr/local/include
/usr/local/lib

但是,C ++仍然无法找到我#include里面的Xcode或用gcc。

Answer 1:

不想在你的这些目录/etc/paths文件。 的文件列出了目录,其中的可执行文件的shell搜索。

尝试:

$ CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib" make
$ sudo make install

您可能需要添加/usr/local/lib到您的DYLD_LIBRARY_PATH ,以确保您的可执行文件运行:

$ export DYLD_LIBRARY_PATH=/usr/local/lib:$DYLD_LIBRARY_PATH

(假设你的DYLD_LIBRARY_PATH变量没有/usr/local/lib ,而它不是空的开始。如果是空的,你应该做export DYLD_LIBRARY_PATH=/usr/local/lib来代替。)

编辑 :好的,根据您的意见,看起来这应该工作:

export CMAKE_INCLUDE_PATH=/usr/local/include
export CMAKE_LIBRARY_PATH=/usr/local/lib

见,如果虽然它在系统中存在的cmake没有找到包怎么办? 更多。

由于您使用的CMake的GUI版本,你应该这样做:

打开“属性列表编辑器”,单击“添加子”。 对于“新项目”,进入CMAKE_INCLUDE_PATH ,对于类型,把它作为“字符串”,为值,输入/usr/local/include 。 然后,再次单击“添加项目”,并输入CMAKE_LIBRARY_PATH的“新项目”,保留类型为“字符串”,并为“值”,输入/usr/local/lib 。 然后保存(文件 - >另存为)到文件中。 我建议文件名a.plist在你的桌面文件夹。 然后打开终端(Appilcations - >实用程序 - >终端)和​​类型:

mv ~/Desktop/a.plist ~/.MacOSX/environment.plist

在此之后,退出Xcode和CMake的图形用户界面,并重新启动。 这应该工作。 见这个技术细节,而这个更多。



文章来源: #include not found