You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Anaconda环境中使用PyInstaller打包Python3.6应用?

解决PyInstaller无法识别Anaconda环境依赖的问题

你遇到的核心问题是:直接运行pyinstaller时,终端默认调用了系统全局的Python环境,而非你开发用的Anaconda虚拟环境——这就是它找不到已安装在Anaconda环境里的youtube_dl包的原因。下面是具体的解决步骤:

  • 第一步:激活你的Anaconda虚拟环境
    打开终端切换到项目目录,然后激活你创建的Anaconda环境(把下面的your_env_name替换成你实际的环境名称):

    conda activate your_env_name
    

    激活成功后,终端提示符前会显示你的环境名称,此时终端里的Python、pip等工具都会指向这个环境的版本。

  • 第二步:在激活的环境中安装PyInstaller
    很多人会忽略这一步:如果系统全局环境装了PyInstaller,但虚拟环境里没装,即使激活了环境,运行pyinstaller还是会调用全局版本。所以在激活环境后执行:

    pip install pyinstaller
    

    确保PyInstaller被安装到当前的Anaconda环境中。

  • 第三步:执行打包命令
    现在在激活的环境里,直接运行你的打包命令:

    pyinstaller Main.py
    

    此时PyInstaller会使用当前Anaconda环境的Python解释器,自然就能找到已安装的youtube_dl包了。

如果不想每次都激活环境,你也可以直接指定Anaconda环境中PyInstaller的绝对路径来执行打包。比如你的环境路径是/Users/你的用户名/anaconda3/envs/your_env_name/bin/pyinstaller,直接运行:

/Users/你的用户名/anaconda3/envs/your_env_name/bin/pyinstaller Main.py

这种方式也能让PyInstaller使用目标环境的依赖。

内容的提问来源于stack exchange,提问作者Gonzalo

火山引擎 最新活动