使用 PyInstaller 编译 python 会抛出许多警告
Compiling python using PyInstaller throws many WARNINGS
我正在尝试从我在 PyCharm 中编写的 python 脚本创建一个 EXE 文件。我正在使用最新版本的 Python 并在 virtualenv 上使用 PyInstaller。
每当我尝试实际使用命令 pyinstaller --onedir map.spec
时就会出现问题,其中 map.spec 是我的脚本的规范文件,包含在此处:
block_cipher = None
a = Analysis(['map.py'],
pathex=['C:\Users\BGBSC\Desktop\untitled'],
binaries=[],
datas=[('nactiMapu.txt', '.'), ('nactiPohyb.txt', '.'), ('nactiZnacky.txt', '.'), ('a.txt', '.'), ('b.txt', '.'), ('c.txt', '.')],
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
[],
exclude_binaries=True,
name='map',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=False,
console=True )
coll = COLLECT(exe,
a.binaries,
a.zipfiles,
a.datas,
strip=False,
upx=True,
upx_exclude=[],
name='map')
每当我尝试 运行 pyinstaller 时,都会出现几个此类警告:
5447 WARNING: lib not found: python38.dll dependency of C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.8_3.8.752.0_x64__qbz5n2kfra8p0\DLLs\_tkinter.pyd
他们每个人都引用 python38.dll,唯一的区别是他们 'dependant' 在不同的模块上。它还写了这一行,这可能也是值得关注的:
5623 INFO: Python library not in binary dependencies. Doing additional searching...
5631 INFO: Using Python library
我的脚本使用这些导入:
import sys
import os
import turtle
import time
是个画东西的乌龟脚本。我还操作了不同的 txt 文件,我将它们作为数据包含在内,以便它们与最终的 exe 一起导出(至少我是这样理解的)。
我可能遗漏了一些非常基本的东西,或者 pyinstaller 不支持最新的 Python,或者它只是找不到我的 python38.dll(我添加了环境路径).
Windows 商店 python 据说是实验性的,开发人员可能应该避免使用。
我建议开发人员从 python.org 下载并使用 Python。
我正在尝试从我在 PyCharm 中编写的 python 脚本创建一个 EXE 文件。我正在使用最新版本的 Python 并在 virtualenv 上使用 PyInstaller。
每当我尝试实际使用命令 pyinstaller --onedir map.spec
时就会出现问题,其中 map.spec 是我的脚本的规范文件,包含在此处:
block_cipher = None
a = Analysis(['map.py'],
pathex=['C:\Users\BGBSC\Desktop\untitled'],
binaries=[],
datas=[('nactiMapu.txt', '.'), ('nactiPohyb.txt', '.'), ('nactiZnacky.txt', '.'), ('a.txt', '.'), ('b.txt', '.'), ('c.txt', '.')],
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
[],
exclude_binaries=True,
name='map',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=False,
console=True )
coll = COLLECT(exe,
a.binaries,
a.zipfiles,
a.datas,
strip=False,
upx=True,
upx_exclude=[],
name='map')
每当我尝试 运行 pyinstaller 时,都会出现几个此类警告:
5447 WARNING: lib not found: python38.dll dependency of C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.8_3.8.752.0_x64__qbz5n2kfra8p0\DLLs\_tkinter.pyd
他们每个人都引用 python38.dll,唯一的区别是他们 'dependant' 在不同的模块上。它还写了这一行,这可能也是值得关注的:
5623 INFO: Python library not in binary dependencies. Doing additional searching...
5631 INFO: Using Python library
我的脚本使用这些导入:
import sys
import os
import turtle
import time
是个画东西的乌龟脚本。我还操作了不同的 txt 文件,我将它们作为数据包含在内,以便它们与最终的 exe 一起导出(至少我是这样理解的)。
我可能遗漏了一些非常基本的东西,或者 pyinstaller 不支持最新的 Python,或者它只是找不到我的 python38.dll(我添加了环境路径).
Windows 商店 python 据说是实验性的,开发人员可能应该避免使用。 我建议开发人员从 python.org 下载并使用 Python。