【问题标题】:osx - boost and python undefined symbols for architecture x86_64osx - 用于架构 x86_64 的 boost 和 python 未定义符号
【发布时间】:2014-09-16 20:00:52
【问题描述】:
我使用 C++11 和 python 2.7.8 和 Boost 1.55.0。我正在使用通用架构和 OS X 10.9 SDK 进行编译。我正在编译 libRocket python 绑定,它需要 boost 和 python。我已经安装了两者并从 CMake 生成了 .xcodeproj。但是,在编译时,我收到了这个错误,并且我一生都无法弄清楚。我已经尝试下载和安装用于 boost 和 python 的 32/64 位库,但没有任何变化。我还检查了 lipo -info,该库包含 i386 和 x86_64 架构。
错误信息:
http://pastebin.com/DnVqSy9P
感谢任何帮助!
【问题讨论】:
标签:
python
c++
xcode
boost
symbols
【解决方案1】:
原来 python 框架已损坏。以供将来在处理这些问题时参考,我建议您采取这些步骤。
1) 检查所有安装。确保它们没有损坏并且在正确的位置。
2) 确保他们已链接到项目。您可以判断它是否未链接,因为 clang 错误将以 ld: 开头并且其中包含单词 linker。
3) 确保您使用的库/框架是针对 32 位和 64 位架构编译的。
4) 确保如果您从头开始编译库/框架,您是为 universal 架构编译的。
5) 确保 "Build Active Architectures Only" 设置为 no!
6) 确保您的项目正在为 32 位或 64 位构建!,并且您的计算机架构适合您的项目!