2012-06-20 103 views
2

直到现在我已经设法让Xcode连接到我已经安装在/ usr/local/lib /下的Gnu科学图书馆(GSL)/usr/local/include下的文件。在“Build Phases”>“Link Binary With Libraries”下我添加了libgsl.a等。今天,Xcode给出了一条错误消息,声称它找不到头文件。Xcode 4.3.3找不到任何头文件

例如

#include <stdio.h> 
#include <gsl/gsl_matrix.h> 

int main(int argc, const char * argv[]) 
{ 

    printf("Hello, World!\n"); 
    return 0; 
} 

导致 'GSL/gsl_matrix.h' 未找到文件。我试图改变用户头搜索路径无济于事。在命令行上使用gcc main.c -lgsl -lgslcblas可以完美地工作。任何人都可以告诉我究竟需要做什么才能让它在Xcode中起作用?此外,为什么它突然停止工作,没有明显的原因。

非常感谢。

回答

9

当我升级到4.3.3并且包含文件安装在我的/ usr/local/include文件夹中时,我遇到了同样的问题。经过一段时间的敲门之后,我发现我必须将/ usr/local/include添加到Project Build Settings中搜索路径下的“Header Search Paths”设置中。我没有必要在以前版本的XCode中这样做。不知道它为什么改变,但希望这对你有用。

+0

谢谢乌斯曼那样做。令人烦恼的是,XCode突然需要这些更改。非常感谢。 – slabofguinness

+0

为了让我的一些库链接,我还必须将/ usr/include/lib添加到“构建设置”的“搜索路径”部分下的“库搜索路径”。 – slabofguinness

0

感谢您的帮助。

在Xcode中4.6我必须:

  • 更改默认的编译器:LLVM GCC 4.2

并添加以下路径:

  • 框架搜索路径:/库/框架
  • 标题搜索路径:/ usr/local/include
  • 图书馆搜索路径:/ usr/include/lib