每日焦点!python别通过复制迁移虚拟环境env Win将遇到Fatal error in launche 应该这样操作文二
文一介绍了在遇到在win10环境安装python3.11(3.9)创建完成虚拟环境,模拟更换下开发环境,将生成的通过复制虚拟环境(拷贝)方式进行移动和改变位置,执行虚拟环境内的pip install moudlename,出现Fatal error in launche错误。
文二将跟各位一起查看下网络的一些方案来说明此Windows复制的方式不够方便,让人难受(不行)的点。
(资料图片仅供参考)
一:https://blog.csdn.net/weixin_43955917/article/details/105723628
一是中心思想是修改venv\Scripts\activate、venv\Scripts\activate.bat、venv\Scripts\activate等调到到新的路径。
二:https://blog.csdn.net/weixin_34175509/article/details/91946762
二是同样是修改activate有关文件,以及修改venv\Scripts\easy_install-script.py、venv\Scripts\easy_install-script.py文件
一尝试修改3个文件,pip.exe运行依旧会错误。唯一的作用在于通过activate.bat进入虚拟环境,python.exe能够被找到。
为什么pip.exe能够被运行很重要?它是python的包管理器,想要用别人的轮子,没有这个包管理器,真的不方便。
二不妥在于,文中未说明测试的操作系统和配python的版本。在测试的python3.11和win10环境下,打开虚拟环境此目录,并未看到*.py,均是被编译成了exe二进制文件。
三:https://blog.csdn.net/qq446252221/article/details/91042163
三指出个关键点编译后的exe脚本。假设文本编辑器查看pip.exe,文件中写出是有个绝对路径,这也是为什么虚拟环境调整后路径将无法使用。
当然不要尝试文本编辑器修改这个路径,修改后的pip.exe将变成无效文件
上述我看到网络上常见的修改方式,整体试下下均不能帮助实现在Windows复制方式迁移虚拟环境。
这里补充一个试验:这段错误的提示是无法找到此python.exe。
如果我们新建建立此路径,并将python.exe重新移动回新的路径。
再次运行pip.exe,此时能够运行不在有错误。
由于在Windows,它很多的文件都是编译成exe,二进制文件内带有python的绝对路径引用。采用复制(移动)后路径被调整,导致无法引用到路径,从而引发错误。
当然如果能够重新构建这些路径或许能够实现,这样复制方式迁移表现复杂,还是采用《Python编程-从入门到实践》书中的方式或改良方式来迁移虚拟环境比较妥当。