【问题标题】:#include <FreeImage.h> not found#include <FreeImage.h> 未找到
【发布时间】:2009-12-14 04:00:32
【问题描述】:

我已经从源代码编译并安装了 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++ 仍然无法在 Xcode 或 gcc 中找到我的 #include

【问题讨论】:

    标签: c++ macos osx-snow-leopard freeimage


    【解决方案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。)

    编辑:好的,根据您的 cmets,看起来应该可以:

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

    请参阅What to do if cmake doesn't find the package although it exists on the system? 了解更多信息。

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

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

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

    之后,退出 Xcode 和 Cmake gui,然后重新启动。那应该行得通。请参阅this 了解技术详情,this 了解更多信息。

    【讨论】:

    • 问题不是Xcode看不到库文件,而是看不到头文件。 Xcode 参考系统上的哪个文件来查看#include &lt;&gt; 存在的位置?
    • @Alok 感谢您的建议。我已将 CFLAGS 和 LDFLAGS 添加到 makefile 中,并且我正在重新编译......手指交叉。
    • 不幸的是,这并没有什么不同。我认为我现在尝试对路径进行硬编码
    • 在 Xcode 中,在 Project -> Edit Project Settings 中,在“Build”选项卡中,您可以在“Search Paths”选项中更改“Header Search Paths”和“Library Search Paths”。为“所有配置”执行此操作。
    • 好的。问题是我正在使用 CMake 构建 Gazebo,而 CMake 在内部运行一个脚本,该脚本使用:#include &lt;FreeImage.h&gt; - gcc 是否没有一些系统范围的变量?
    猜你喜欢
    • 2010-12-25
    • 2011-04-23
    • 1970-01-01
    • 2014-07-18
    • 2016-12-30
    • 1970-01-01
    • 1970-01-01
    • 2013-01-15
    • 2016-01-29
    相关资源
    最近更新 更多