正如我所说,我的主要问题是我正在打包已编译的文件。要从tarball / zip文件中排除这些文件,只需将其放在MANIFEST.in:中prune bin
。
然后只需从setup.py调用makefile:
directory = 'bin'
if not os.path.exists(directory):
os.makedirs(directory)
subprocess.call(['make', '-C', 'src'])
这样,当有人这样做时pip install whatever
,将调用make文件并放上二进制文件bin
(必须在make文件上指定它)。
然后,只需说一下复制这些文件的设置即可:
setup(
...
data_files=[('bin', ['bin/binaries'])],
)
做完了!希望有人觉得这很有用:)