- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我使用 3 个 *.m 文件(main.m、AppDelegate.m 和 projectnameTests.m)在 Xcode 中创建了一个新的 Cocoa 应用程序。为了使用 object-cpp,我将 3 个 *.m 文件重命名为 *.mm 文件。
然后我从 Xcode 得到以下错误:
"Undefined symbols for architecture x86_64: "_NSApplicationMain", referenced from: _main in main.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)"
我从来没有处理过 .o 文件,所以我不确定哪里出了问题。请帮忙。
P.S.: 我使用的是最新的 Xcode,版本 (6.1.1)。
最佳答案
将 AppKit.framework 添加到项目目标的构建阶段下的“将二进制文件与库链接”部分,这应该可以解决问题。
附言不要问我为什么 XCode 会自动为 .m 文件找到必要的框架(即 AppKit.framework)而不为 .mm 文件找到必要的框架(即 AppKit.framework),但是添加 AppKit.framework 可以解决问题,因为 NSApplicationMain 是在 AppKit 中定义的。添加 Cocoa.framework 也解决了这个问题,可能是因为它会触发 XCode 自动链接到 AppKit.framework。
关于c++ - 如何在 Xcode 中使用 object-Cpp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28247574/
我是一名优秀的程序员,十分优秀!