2

我正在尝试在我的 Xcode 项目中使用 iPhone 的CHDataStructures静态库。我将它包含# import "CHDataStructures.h"在我的班级标题中。但是,当我编译我的项目时,我得到了错误:

d:在 /Users/sam/Desktop/Apps/libCHDataStructures.a(Util.o) 和 /Users/sam/Desktop/Apps/build/Apps.build/Debug-iphonesimulator/Apps.build/Objects-normal 中重复符号 _kCHPointerSize /i386/AppsAppDelegate.o collect2: ld 返回 1 退出状态命令 /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 失败,退出代码为 1

我正在使用 GCC-4.2 编译器,并且我也尝试过 LLVM GCC 4.2。我还尝试在构建设置中设置 、 和标志,但它没有-ObjC编译-all_build-force_build我还尝试清理目标,并确保目标二进制文件中是否包含静态库。但我无法弄清楚问题所在。任何人都可以帮忙吗?

4

2 回答 2

0

打开 Util.h 文件,替换该行

HIDDEN size_t kCHPointerSize;

OBJC_EXPORT size_t kCHPointerSize;
于 2014-01-17T01:15:21.920 回答
0

现在可能为时已晚,但我刚刚遇到了类似的问题,所以如果仍然存在问题,请检查您的导入语句。

看起来您可能会kCHPointerSize在 theAppDelegate和您的Util班级中引用。

就我而言,我经常导入同一个.h文件。我删除了其中一个导入语句,问题就解决了。

于 2013-05-30T14:27:25.450 回答