11

我想在我的 Xcode 项目中使用 boost。(Xcode 版本 4.3.2)

我已经从 MacPorts 构建了 boost,并设置了环境变量。

但是当我构建prj时,出现了错误:

未知类型名称“命名空间”

和下面的错误代码:

// This file is automatically generated. Do not edit.
// ['../../libs/compatibility/generate_cpp_c_headers.py']
// Wed Jul 23 12:11:19 2003 ('GMTST', 'GMTST')

#ifndef __CSTDDEF_HEADER
#define __CSTDDEF_HEADER

#include <stddef.h>

namespace std {
  using ::ptrdiff_t;
  using ::size_t;
}

#endif // CSTDDEF_HEADER
4

1 回答 1

16

自动生成的代码是 C++,而不是 Objective-C。Objective-C 编译器拒绝无效关键字“命名空间”。

要使其正常工作,请按如下方式更改项目设置: - 转到项目设置并选择目标 - 选择构建设置 -> Apple LLVM 编译器 XX - 语言 -> 将源编译为并将其设置为允许混合目标的 Objective-C++ -C 和 C++。

于 2013-04-18T11:18:14.330 回答