目前,我正在用纯 python 编写自定义地理空间脚本/模块。这些分发给我所写的公司内部的中等规模的用户群。用户使用多种 linux、OS X 和 windows,因此我需要能够支持安装到一系列系统。我广泛的依赖项列表是:
GDAL Matplotlib 与底图 NumPy SciPy PIL Python 2.7+
当其他用户作为安装联系人时,他们是如何为如此多样化的用户维护一个工具库的?目前正在考虑:
使用我们需要的一切创建一个 LUbuntu VM,然后通过网络运行它或在用户机器上本地运行它。
修改 FWTools 并添加我们需要的组件。FWTools 通过在用户调用脚本时设置本地、自包含的环境来发挥作用。
创建一个像PythonEveryWhere这样的实现,我们让用户通过浏览器访问 bash shell / python 解释器。数据通过网络从用户的共享驱动器中提取,并将输出填充到该驱动器。
Pip / easy_install / Py2EXE / Py2App 已经过测试,但在多个平台上都不是很好(GDAL 是一个主要问题),或者考虑到依赖项的数量,创建了相当大的可分发文件。
还有哪些其他实现对您有用?我是否缺少明显的分发技术?