前一段时间看到 PyOxidizer 这个项目,但是大概看了看文档也没看懂,看起来似乎是个打包程序,但似乎要和 rust 关联,我想打包 python 程序为什么和 rust 产生关系了?
pyinstaller 打包方式已经持续多年了,比如一个简单的需求是,我有一个 main.py 的程序,有若干 pip 依赖,我现在希望产生一个 exe ,让它在没有安装 python 的电脑上也能运行。pyinstaller 能用,但是实在也说不上好用,隐藏源码之类的功能就不奢求了,打包完后提示缺少依赖也是常事,在加上启动速度实在不敢恭维。
py 虚拟机相对于 java 虚拟机启动起来还是要快一些,比如运行
python -c "print('hello world')"
这种命令无论在 win 还是 linux 上都可以 0.1 秒内返回结果。而 venv 之类的虚拟环境本身体积也不是很大,大概只有十几 MB ,为啥不能有个好用的打包系统。。。后来有个 nuitika 打包,但是还是使用起来不方便,我想随手发布个小脚本,打包还要 gcc 环境。。
