我有一个使用以下库的Python程序:Tkinter,NumPy,SciPy,SymPy和Matplotlib。并且在开发过程中可能会在不久的将来包含更多的库。
如何将这样的程序分发给Mac,Windows和Linux用户,而无需用户安装每个库的正确版本,希望只下载一个文件并执行它?
我最初想要的是将程序编译成静态二进制程序,但似乎这不是一个简单的目标。
我可能会要求用户安装Python,但这是我可以要求的最大要求,如果可能的话我想避免使用它。
我根本不在乎隐藏代码;最后,我将分发代码和程序。我想要的是让程序非常容易下载和运行任何用户。
即使是像Python程序这样的建议也不适合这样的发行版'很受欢迎。我在分发C程序方面有相当多的经验,但我不知道Python程序会有什么期望。
答案 0 :(得分:0)
您可以使用Setuptools来执行打包工作。 它创建eggs,相当于罐子。
https://pypi.python.org/pypi/setuptools#using-setuptools-and-easyinstall
答案 1 :(得分:0)
为方便起见,您可以尝试pyinstaller之类的内容。 它会将所有需要的模块打包到一个文件夹或一个可执行文件中。它可以在所有平台上运行。
制作目录的简单命令包含可执行文件,所有需要的库都是
$pyinstaller --onedir --name=directory_name --distpath="path_to_put_that_directory" "path to your main_program.py"
您可以将--onedir
更改为--onefile
,使该文件夹成为一个可执行文件,其中包含在内部运行所需的所有内容。
答案 2 :(得分:0)
您可以查看Py2exe,即使您有可能使应用程序变得比以前更大,并且需要手动安装某些软件包。