也许我的问题很明显,但我没能找到一个明显的决定。在
python2.6+扩展名为audit和auparse。这些是与audit libs python包一起分发的动态库:
[vitaly@thermaltake tmp]$ repoquery -lq audit-libs-python
/usr/lib64/python2.7/site-packages/_audit.so
/usr/lib64/python2.7/site-packages/audit.py
/usr/lib64/python2.7/site-packages/audit.pyc
/usr/lib64/python2.7/site-packages/audit.pyo
/usr/lib64/python2.7/site-packages/auparse.so
我想在最新的Python解释器中使用这个扩展,因为suspicions about the incorrect handling of dynamic memory in python 2.6+。由于某些原因,我无法从Python 3.3中加载它们:
^{pr2}$如果有人能解释一下将这类模块导入现代Python解释器的过程,我将非常高兴。在这种情况下,很难相信第二和第三分支之间的向后兼容性也被破坏了。谢谢您。在
必须为每个特定的Python版本编译
.so
模块,甚至不能在python2.7中重用为python2.6构建的.so
模块。在当切换到python3时,情况会变得更糟,since there are some API changes,因此SO不会从.C文件(可能有例外)中进行未更改的构建。在
一种解决方法是使用xmlrpc为2.6模块中要使用的函数提供服务,然后从运行python3.x的单独Python进程调用它,这应该是最简单的方法。在
相关问题 更多 >
编程相关推荐