c++ - 使用 gcc-4.1.2 在 RHEL5 上使用 Python 2.7.1 boost 1.44

标签 c++ python linux boost gcc4

呃!我遇到了其中一个我真的一无所知的错误。我已经构建/安装了 Python (2.7.1),并且针对该版本的 python 构建/安装了 boost (1.44.0)。我在我的 boost 构建中没有看到任何错误,一切都很顺利。

当我开始构建具有大量 boost 依赖性的应用程序时,在我的 C++ 代码中,我确实调用了 Py_Init(...) 我收到以下错误:

Linking CXX executable ../../../myapp_exec
../../../../../config/cmake/platforms/../../../../3rdparty/2012/<pack>/rh5_x86_64_gcc-4.1.2/boost-1.44.0/lib/libboost_python-gcc41-1_44.so: undefined reference to `Py_InitModule4' collect2: ld returned 1 exit status
gmake[2]: *** [myapp_exec] Error 1

我用谷歌搜索了一下,但没有找到真正的解决方案。 我在 Windows 上没有看到此问题。如果有人可以分享他们在 Linux (RHEL5) 上遇到类似问题的经验以及他们如何克服它,我们将不胜感激。我可以尝试针对较旧版本的 Python(2.6.4 或更早版本)构建 boost-1.44.0。

预先感谢您的时间和兴趣。 -T。

最佳答案

为什么不使用存储库和 rpm/yum 安装所有内容?在我看来,gcc 4.1.2(2007) 对于 boost 1.44(2010) 来说可能太旧了,Python 也类似。我认为迁移到更新的编译器或 Linux 发行版(最新的基于 RHEL 的 linux..i.e RHEL 、CentOs exc..)升级是正确的选择。

您是否还对 boost 和 python 运行 make check 以查看它们是否正确编译?

关于c++ - 使用 gcc-4.1.2 在 RHEL5 上使用 Python 2.7.1 boost 1.44,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12102266/

相关文章:

c++ - 无符号长按位运算符?

c++ - 如何结合 std::make_shared 和 new(std::nothrow)

python - 如何在 python 中获取 errno 值的错误消息?

linux - 是否可以使计算机充当蓝牙 HID 设备?

c++ - 有关使用return的C++函数

c++ - 在 C++ 中将 Double 转换为 String 时精度丢失

python - 从字段中减去数据 - PostgreSQL

python 网络浏览器

python - 如何制作一个排序的字典类?

linux - grep 无法找到曾经有效的转义破折号