"File not found" py2exe 错误
"File not found" error with py2exe
我最近安装了 py2exe
以尝试将一些简单的 python 脚本转换为可执行文件。我在 python 3.4 中使用 Anaconda,我下载了最新的(?)py2exe 包:0.9.2.2——我使用了 https://pypi.python.org/pypi/py2exe/
中的 .whl 文件
似乎一切正常。正如一些人所建议的那样,我在 运行 安装程序之前禁用了我的防病毒软件:
<path to pip.exe> install <path to py2exe.whl file>
但是当我尝试使用 build_exe test.py
转换一个简单的示例文件时,我得到了错误:错误:
[Errno 2] No such file or directory:
'C:\Anaconda3\lib\site-packages\py2exe\run-py3.5-win-amd64.exe'
我检查了目录,果然那个文件不存在....我什至没有使用 v3.5,我有 v3.4 所以我认为它应该寻找的文件是 "run_w-py3.4-win-amd64.exe"(在那里)。
我也通过另一种方式尝试了 运行 转换器,方法是创建一个 setup.py 文件:
from distutils.core import setup
import py2exe
setup(console=['test.py'])
然后 运行 python setup.py py2exe
从命令提示符。那让我犯了同样的错误。有人能解决这个问题吗?
错误来自 py2exe
中的 importlib._bootstrap_external
文件(具体来说,传递路径变量的 FileLoader
函数,但我似乎无法弄清楚路径变量已初始化或从哪里传递。
提前感谢您的帮助!
作为参考,这是我的 test.py 脚本:
count = 0
while count < 10:
print("Count = ",count)
count += 1
我找到问题了!
我在我得到的新 Microsoft Surface 上安装了最新版本的 Anaconda,但没有意识到它是 python 3.5 特定的。这很重要的原因是因为 python 3.5 的 distutils 会尝试在 py2exe 中寻找与 3.5 相关的项目,即使 py2exe 是特定于 3.4 的。
我卸载了 v.3.5 并安装了 v3.4(我不想处理安装多个版本的 python)。重新安装后,我关闭了防病毒软件并使用 pip install py2exe
。我收到一个警告,它是旧版本的 pip,但它仍然有效。
希望这对可能遇到与我相同问题的其他人有所帮助。
我最近安装了 py2exe
以尝试将一些简单的 python 脚本转换为可执行文件。我在 python 3.4 中使用 Anaconda,我下载了最新的(?)py2exe 包:0.9.2.2——我使用了 https://pypi.python.org/pypi/py2exe/
似乎一切正常。正如一些人所建议的那样,我在 运行 安装程序之前禁用了我的防病毒软件:
<path to pip.exe> install <path to py2exe.whl file>
但是当我尝试使用 build_exe test.py
转换一个简单的示例文件时,我得到了错误:错误:
[Errno 2] No such file or directory: 'C:\Anaconda3\lib\site-packages\py2exe\run-py3.5-win-amd64.exe'
我检查了目录,果然那个文件不存在....我什至没有使用 v3.5,我有 v3.4 所以我认为它应该寻找的文件是 "run_w-py3.4-win-amd64.exe"(在那里)。
我也通过另一种方式尝试了 运行 转换器,方法是创建一个 setup.py 文件:
from distutils.core import setup
import py2exe
setup(console=['test.py'])
然后 运行 python setup.py py2exe
从命令提示符。那让我犯了同样的错误。有人能解决这个问题吗?
错误来自 py2exe
中的 importlib._bootstrap_external
文件(具体来说,传递路径变量的 FileLoader
函数,但我似乎无法弄清楚路径变量已初始化或从哪里传递。
提前感谢您的帮助!
作为参考,这是我的 test.py 脚本:
count = 0
while count < 10:
print("Count = ",count)
count += 1
我找到问题了!
我在我得到的新 Microsoft Surface 上安装了最新版本的 Anaconda,但没有意识到它是 python 3.5 特定的。这很重要的原因是因为 python 3.5 的 distutils 会尝试在 py2exe 中寻找与 3.5 相关的项目,即使 py2exe 是特定于 3.4 的。
我卸载了 v.3.5 并安装了 v3.4(我不想处理安装多个版本的 python)。重新安装后,我关闭了防病毒软件并使用 pip install py2exe
。我收到一个警告,它是旧版本的 pip,但它仍然有效。
希望这对可能遇到与我相同问题的其他人有所帮助。