如何将未更改的C扩展打包为新Python包的一部分?
我已经向pypi发布了一个新版本的Python包,没有更改C扩展。由于我只更改了Python代码,而没有更改C代码,因此如何打包我为多个平台编译的共享库而不必重新编译?以名为“somelib”的库为例,该库的编译库位于两个子目录lib-i386和lib-amd64中: MANIFEST.in包含以下内容:如何将未更改的C扩展打包为新Python包的一部分?,python,packaging,distutils,Python,Packaging,Distutils,我已经向pypi发布了一个新版本的Python包,没有更改C扩展。由于我只更改了Python代码,而没有更改C代码,因此如何打包我为多个平台编译的共享库而不必重新编译?以名为“somelib”的库为例,该库的编译库位于两个子目录lib-i386和lib-amd64中: MANIFEST.in包含以下内容: include __init__.py include setup.py include somelib/* include somelib/lib-i386/* include someli
include __init__.py
include setup.py
include somelib/*
include somelib/lib-i386/*
include somelib/lib-amd64/*
py包含(我省略了对版本控制问题不重要的行):
所有库对象都在包内,但只安装特定于“arch”的库对象
嗯
# Determine machine arhitecture
arch = os.uname()[4]
libname = "lib-%s" % (arch,)
lib_files = glob.glob('./somelib/' + libname + '/*')
data_files = [('somelib',
lib_files + ['__init__.py', 'somelib/README.TXT']),]
setup(
...
data_files=data_files
)