Python,就地加载共享对象

我有一些C代码,并且有一个Python(3.8)接口,我可以安装此共享库(在Linux上安装到/usr/local/...中)并对其运行Python脚本,一切正常。>

但是我想在安装{em> 之前加载该.so文件,以便可以对其进行一些测试。据我了解,LD_LOAD_PATH是我的朋友,但是我如何获得构建目录?就我而言,.so是内置的

build/lib.linux-x86_64-3.8/maxmodnb.cpython-38-x86_64-linux-gnu.so 

是否有一些简单的方法来获取lib.linux-x86_64-3.8

可能我在问一个错误的问题:在安装之前是否有一种简单的方法来加载此文件?

[编辑]

当然LD_LOAD_PATH与它无关,只是将目录添加到PYTHONPATH

iCMS 回答:Python,就地加载共享对象

我找不到简单的方法,但是这个反向工程脚本似乎可以解决问题:

from sys import platform,version_info
from os import uname

print(
    'lib.%s-%s-%i.%i' % (
        platform,uname()[4],version_info[0],version_info[1]
    )
)

给出

$ python python-so-dir.py 
lib.linux2-x86_64-2.7
$ python3 python-so-dir.py 
lib.linux-x86_64-3.8

符合预期。

本文链接:https://www.f2er.com/1920408.html

大家都在问