如何使 python 在所有计算机上兼容?
How to make python compatible on all computers?
我写了一个有趣的脚本,我想与人们分享,但它不会 运行 在其他计算机上,除非它们安装了相同的依赖项。如何将依赖项捆绑到脚本包中,以便其他人不需要将依赖项安装到 运行 脚本中?比如,也许让脚本引用脚本打包所在的同一文件夹中的依赖项。
我想保持开源并共享我的代码,所以我不想使用 cx_freeze 将其转换为 exe。
尝试 packaging/bundling 使用 pyinstaller; This us used for example by docker-compose 来发布跨平台兼容二进制文件(,其中 docker-compose
写在 Python).
最简单的用法是:
pip install pyinstaller # Get pyinstaller
pyinstaller -F /path/to/myscript.py
您最终会得到一个可以共享的捆绑可执行文件,其中包含所有依赖项。
注意:您可能需要为您想要支持的其他平台/操作系统重复这些步骤(例如:Windows);但我没有这样做的实际经验,所以请参阅 pyinstaller Documentation 了解如何为其他平台捆绑。
更新: 要同时提供程序的 pre-built/bundled 分发版和可下载的源代码,只需遵循上述第一部分的建议并遵循 Python Packaging Guide 用于在 setup.py
中声明依赖关系,使其他人可以轻松地 pip install
或 git clone
和 python setup.py install
.
我建议你创建一个虚拟环境。
Step 1:
>> pip install virtualenv
Step 2:
>> cd my_project_folder
>> virtualenv env
Note: In this case I named my environment "env" you
can call it whatever you want.
Step 3: Activate your virtual environment
>> source env/bin/activate
Step 4: Install whatever libraries your program needs.
ex. >> pip install Flask
Step 5: Create a requirements doc.
>> pip freeze > requirements.txt
Note: Be sure to update your requirements.txt doc
whenever you install new packages.
当你 post 你的项目在开源论坛上时,人们可以 pip 安装你的 requirements.txt 文件,以获得与你创建它时相同的环境。
我写了一个有趣的脚本,我想与人们分享,但它不会 运行 在其他计算机上,除非它们安装了相同的依赖项。如何将依赖项捆绑到脚本包中,以便其他人不需要将依赖项安装到 运行 脚本中?比如,也许让脚本引用脚本打包所在的同一文件夹中的依赖项。
我想保持开源并共享我的代码,所以我不想使用 cx_freeze 将其转换为 exe。
尝试 packaging/bundling 使用 pyinstaller; This us used for example by docker-compose 来发布跨平台兼容二进制文件(,其中 docker-compose
写在 Python).
最简单的用法是:
pip install pyinstaller # Get pyinstaller
pyinstaller -F /path/to/myscript.py
您最终会得到一个可以共享的捆绑可执行文件,其中包含所有依赖项。
注意:您可能需要为您想要支持的其他平台/操作系统重复这些步骤(例如:Windows);但我没有这样做的实际经验,所以请参阅 pyinstaller Documentation 了解如何为其他平台捆绑。
更新: 要同时提供程序的 pre-built/bundled 分发版和可下载的源代码,只需遵循上述第一部分的建议并遵循 Python Packaging Guide 用于在 setup.py
中声明依赖关系,使其他人可以轻松地 pip install
或 git clone
和 python setup.py install
.
我建议你创建一个虚拟环境。
Step 1:
>> pip install virtualenv
Step 2:
>> cd my_project_folder
>> virtualenv env
Note: In this case I named my environment "env" you
can call it whatever you want.
Step 3: Activate your virtual environment
>> source env/bin/activate
Step 4: Install whatever libraries your program needs.
ex. >> pip install Flask
Step 5: Create a requirements doc.
>> pip freeze > requirements.txt
Note: Be sure to update your requirements.txt doc
whenever you install new packages.
当你 post 你的项目在开源论坛上时,人们可以 pip 安装你的 requirements.txt 文件,以获得与你创建它时相同的环境。