Osx - boost和python未定义的符号为架构x86_64
osx - boost and python undefined symbols for architecture x86_64
我使用c++ 11和python 2.7.8与Boost 1.55.0。我正在用通用架构和OS X 10.9 SDK进行编译。我正在编译libRocket python绑定,它需要boost和python。我已经安装并从CMake生成了。xcodeproj。然而,在编译时,我收到了这个错误,不能为我的生活弄清楚。我已经尝试下载和安装32/64位库的boost和python,但没有任何变化。我还检查了lipo -info和库包含i386和x86_64架构。
错误味精:http://pastebin.com/DnVqSy9P
任何帮助都是感激的!
原来python框架损坏了。以下是我建议您采取的步骤,以供将来处理这些问题时参考。
1)检查所有安装。请确保它们没有损坏,并在正确的位置。
2)确保它们链接到项目。你可以判断它是否没有链接,因为clang错误将以ld:开头,并且其中包含linker这个词。
3)确保你使用的库/框架是为 32位和64位架构编译的。
4)确保如果你从头开始编译库/框架,你是为通用架构编译的。 5)确保"Build Active Architectures Only"设置为no! 6)确保你的项目是为32位或64位构建的!和您的计算机的体系结构是正确的一个为您的项目!相关文章:
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 将无符号char*转换为std::istream*C++
- 如何在C++中将一个无符号的 int 转换为两个无符号的短裤?
- 从矢量<无符号字符>转换为字符* 包括垃圾数据
- 如何理解将半精度指针转换为无符号长指针和相关的内存对齐
- 为x86而非x64编译时出错
- 检查TCHAR数组输入是否为带符号整数C++
- 为什么 gcc 和 clang 为函数模板的实例化生成不同的符号名称?
- 如何将字节数组元素替换为修改的十六进制 ASCII 符号?
- 如何在保持其值的同时将 c++ 无符号字符变量转换为 char 变量
- 无法在 Arduino 中uint8_t数组转换为无符号长整型数组
- 为函数定义符号不明确的指针参数
- 将程序从x86转换为x64
- 组件X86转换为ARM功能呼叫,其中有不同数量的参数为ARM
- 运算符重载(以 C++ 和 & 符号为单位)
- 在 x86-64 平台上为 C(++) 中的 64 位无符号参数计算 (a*b)%n FAST
- Osx - boost和python未定义的符号为架构x86_64
- 编译错误未定义的符号为架构x86_64:
- 将c++项目类型从x86更改为x64后的链接器错误
- qt 5.4/clang:未定义的符号为架构x86_64 (std::istream::gcount())