迁移编译后的python程序的问题及解决方案

在前一篇博文中,我们讲述了如何将python脚本通过编译进行加密,按照第三种方法编译之后得到的可执行文件,迁移到其他环境的时候可能会遇到其他问题:

1. Python解释器路径问题
错误信息:

Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]

解决办法

export PYTHONHOME=
或者
unset PYTHONHOME

2. $PYTHONPATH路径问题
错误信息:

ImportError: No module named site

查找site相关路径

[root@58362c56d43d]find / -name site.py*
/usr/lib64/python2.7/site.pyc
/usr/lib64/python2.7/site.py
/usr/lib64/python2.7/site.pyo

将路径添加到$PYTHONPATH

[root@58362c56d43d]export PYTHONPATH=$PYTHONPATH:/usr/lib64/python2.7

3. 找不到_socket模块
错误信息:

import _socket ModuleNotFoundError: No module named '_socket'

出现这个问题的可能性是你当前的python版本太低,我从docker hub拉取的centos:7.6.1810镜像自带Python 2.7.5,这个版本找不到_socket模块,将Python升级到2.7.15解决。

4. openssl_md5() takes no keyword arguments错误
错误信息:

TypeError: openssl_md5() takes no keyword arguments

将Python升级到2.7.15解决。

注:当升级到2.7.15版本之后,以上第二步的PYTHONPATH要相应修改,默认的库已经不在那个文件夹了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值