如何打包我正在使用的Python库,所以我可以分发他们与我的应用程序,并有尽可能less的依赖关系

如何打包我正在使用的Python库,所以我可以分发他们与我的应用程序,尽可能less的依赖关系,也不要与已经在我的系统上的不同的lib /版本冲突。

LE:对不起,我忘了指定。 我将在linux上这样做。 而我并不是指使我的应用程序像deb / rpm等可安装的文件,但如何组织我的文件,例如我将使用cherrypy和sqlalchemy我将运送这些与我的应用程序,而不是把用户通过自己安装所有的依赖的痛苦。

Solutions Collecting From Web of "如何打包我正在使用的Python库,所以我可以分发他们与我的应用程序,并有尽可能less的依赖关系"

您可以让您的用户从启动脚本运行系统,并且该脚本可以提前修复pythonpath,以便将您的版本放在第一位。 例如,如果将CherryPy,SQLAlchemy等放在“外部”子目录中,则可以尝试:

# startproj.sh script_path=`dirname $0` export PYTHONPATH=${script_path}/external;${PYTHONPATH} exec ${script_path}/projstartup.py 

尝试py2exe 。

但是,如果您使用列出的正确依赖关系进行deb安装,则会将其下载给用户。 这是最好的方式,因为它不是多余的。

也许你可以用你的deb和所有的第三方deb和一个安装脚本来制作一个tar或者zip文件,只需要按照正确的顺序安装所有的debs文件。 这样,如果用户已经有一些包,它不会再被安装。