CImg Compilation Error: t_normal not in global namespace

CImg Compilation Error: t_normal not in global namespace

我目前正在做一项需要使用 CImg 库的 class 作业。需要明确的是,作业不是将库链接到程序中; class就是用它来访问像素数据,以备后用。

我在 Xcode (OS X 10.10) 工作。 CImg (2.2.2) 是从自制软件安装的,我设法以奇怪的方式导航 Xcode 处理搜索路径(将 header 添加到该部分),并且 successfully-ish包括 CImg。

我的完整代码如下。

#include <iostream>
#define cimg_display 0        //I don't need X11 at all
#include "CImg.h"

using namespace cimg_library;
int main(int argc, const char * argv[]) {
// insert code here...
std::cout << "Hello, World!\n";
return 0;
}

但是,我从 CImg.h 中得到 17 个 Compile-time 错误,这些错误非常不寻常,并且都是以下形式:

"No member named 't_normal' in the global namespace; did you mean simply 't_normal'?"

我想我可能收到了错误的下载,我尝试重新下载 CImg,但没有成功。我对 non-homebrew 版本的 CImg 也有同样的看法。

为了验证下载,我还从命令行编译了示例,它们 运行 完美。

CImg 是否有我不知道的问题,Xcode 是否有我不知道的问题,或者我是否缺少一些基本的东西(绝对是一个选项,我的 C-style 编程有点生疏)?

请减半

如果您这样做,您的代码将运行良好:

创建一个新的 Xcode 项目,其中:

  • 类型="Command Line Tool"
  • 语言="C++"

然后转到"Build Settings"并将包含CImg.h的目录的路径添加到您的"User Header Search Paths"