pyinstaller 把python编译成二进制

我考,原来python也能编译成二进制,即脱离python环境运行,我还以为这只是c,c++,golang这些语言才能做的。好吧,我承认,我今天才知道。。。。

 

pyinstaller 安装

1.     安装pip

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

python3 get-pip.py

2.     安装pyinstaller

pip install pyinstaller

3.     安装python-dev

     4.  安装binutils

apt-get install binutils

 

 编译命令

编译命令: pyinstaller -F venom_checkout.py

Pyinstaller编译说明文档:https://pyinstaller.readthedocs.io/en/stable/usage.html

 

 注意(坑):

 

https://github.com/pyinstaller/pyinstaller/wiki/FAQ

 

Pyinstallglibc不向前兼容,也就是如果用新操作系统编译的版本,放到旧系统上运行会报错,我这就碰到了” /tmp/_MEI2M4CYn/libreadline.so.6: no version information available (required by /bin/sh)”的错误。因为我用了ubuntu16编译的二进制,放到了suse12上运行,结果遇到了上面的问题。

 

解决办法:

1.       按照上文说的使用老版本编,可通过ldd –version查看glibc版本

2.       使用staticX

3.       赶紧用golang来编写吧

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值