首页 > 解决方案 > 如何使用 venv 内部的外部工具在 PyCharm 中为项目设置 PyInstaller?

问题描述

我在 PyCharm 中有一个项目,其中包含多个 Python 文件以及一些文本文件,我想通过 PyInstaller 将其导出到 .exe(我在 Win 7 上)。该项目使用通过 pip 安装的一些外部模块venv(PyInstaller 就是其中之一)。

外部工具设置

出于显而易见的原因,我想让事情保持简单并且不在venv构建中使用任何模块。但是,当我尝试在项目文件夹上执行 PyInstaller 工具时,出现权限错误:PermissionError: [Errno 13] Permission denied. 乍一看,在项目内部使用 PyInstallermain.py可以很好地构建它,但运行 .exe 会cmd显示error loading Python DLL. 我该怎么做?有些东西告诉我应该事先创建规范以包含项目中使用的所有文件和模块。

标签: pythonpycharmexepyinstallerexternal-tools

解决方案


为了回答标题中的问题,您在 PyCharm 中指定的参数将在您执行工具时Arguments传递给。pyinstaller.exe所以它应该是文件的路径main.py或路径.spec,而不是$FilePath$被当前在 PyCharm 中打开的文件替换的宏。

您绝对应该有一个.spec致力于版本控制的文件。这使您的 PyInstaller 构建更加一致,并允许其他人轻松复制它们。请参阅https://pyinstaller.readthedocs.io/en/stable/spec-files.html


推荐阅读