我有一个由我使用的几个科学程序模块组成的个人python库。这些生活在一个目录的结构:针对不同体系结构的软件包python目录
root/__init__.py
root/module1/__init__.py
root/module1/someprog.py
root/module1/ (...)
root/module2/__init__.py
root/module2/someprog2.py
root/module2/somecython.pyx
root/module2/somecython.so
root/module2/somefortran.f
root/module2/somefortran.so
(...)
我不断对这些程序进行更改并添加新文件。通过我目前的设置,我可以与几台不同架构的机器共享相同的目录。我想要的是在不同的体系结构中使用Python中的这些包的方法。如果软件包都是纯Python,这将是没有问题的。但问题是我有几个从Cython和f2py编译的二进制文件(如示例中所示)。
是否有一种巧妙的方式来重新包装这些二进制文件,以便不同系统中的python只导入相关的二进制文件?我想保持代码组织在同一个目录中。
显然,最简单的方法是复制目录或创建另一个符号链接目录。但这意味着当创建新文件时,我不得不手动更新符号链接。
有没有人碰到类似的问题,或者可以建议对这个组织问题更pythonic方法?
但不将setuptools的方式只是把包放到不同的目录?我想要的是保持源文件(.py,.pyx,.f)的集中版本以及独立于架构相关文件的位置的方法。 – tiago