Python Pyinstaller生成文件,但在某些.dll上阻塞
当我运行py程序时,它按照我的预期工作。如果我在Linux机器上,使用Pyinstaller构建可执行文件,那么它构建时不会出现问题,执行时也不会出现问题。我已经搜索了Pyinstaller文档、git等。发布的修复都没有帮助 我对python还是一个新手,我觉得这可能是一个简单的修复,可能是对这个问题的过度思考 为什么我不能使用pyinstaller在基于windows的系统上构建一个功能性的.exe Windows 10系统 Pyinstaller版本3.2 Python版本3.5.2 这是一个使用appJar的GUI程序,也是最新的 文件未生成,但出现错误“无法执行脚本” 编辑 不确定这是否是最好的编辑行像这样,但。。。 因此,研究输出并进行调整,问题似乎是appJar.py。出于某种原因,它缺少资产,我正在调查它。问题是我还不习惯看这种输出,也不知道从哪里开始Python Pyinstaller生成文件,但在某些.dll上阻塞,python,dll,pyinstaller,Python,Dll,Pyinstaller,当我运行py程序时,它按照我的预期工作。如果我在Linux机器上,使用Pyinstaller构建可执行文件,那么它构建时不会出现问题,执行时也不会出现问题。我已经搜索了Pyinstaller文档、git等。发布的修复都没有帮助 我对python还是一个新手,我觉得这可能是一个简单的修复,可能是对这个问题的过度思考 为什么我不能使用pyinstaller在基于windows的系统上构建一个功能性的.exe Windows 10系统 Pyinstaller版本3.2 Python版本3.5.2 这是
C:\Users\_User_>C:\temp\fileCreatorGUI\fileCreatorGUI.exe
Traceback (most recent call last):
File "F:\Users\_User_\python_working\fileCreatorGUI.py", line 73, in <module>
app = gui()
File "C:\Users\_User_\AppData\Local\Programs\Python\Python35\lib\site-packages\appJar\appjar.py", line 509, in __init__
self.topLevel.wm_iconbitmap(self.appJarIcon)
File "C:\Users\_User_\AppData\Local\Programs\Python\Python35\lib\tkinter\__init__.py", line 1716, in wm_iconbitmap
return self.tk.call('wm', 'iconbitmap', self._w, bitmap)
_tkinter.TclError: bitmap "C:\temp\fileCreatorGUI\appJar\resources\icons\favicon.ico" not defined
Failed to execute script fileCreatorGUI
我将这些.dll添加到python路径中,并在.spec文件的bianaries中声明它们
以下是截断的日志:
2414 WARNING: Can not get binary dependencies for file: C:\Windows\system32\api-
ms-win-crt-stdio-l1-1-0.dll
Traceback (most recent call last):
File "C:\Users\_USER_NAME\AppData\Local\Programs\Python\Python35-32\lib\site-pa
ckages\PyInstaller\depend\bindepend.py", line 695, in getImports
return _getImports_pe(pth)
File "C:\Users\_USER_NAME\AppData\Local\Programs\Python\Python35-32\lib\site-pa
ckages\PyInstaller\depend\bindepend.py", line 122, in _getImports_pe
dll, _ = sym.forwarder.split('.')
TypeError: a bytes-like object is required, not 'str'
2423 WARNING: Can not get binary dependencies for file: C:\Windows\system32\api-
ms-win-crt-heap-l1-1-0.dll
我尝试了下面列出的修复:
但这似乎没有什么不同
有人建议添加sys.path.insert()
route,但这两种方法都没有效果
我也在一个安装了Windows7的虚拟机上尝试了这个方法,完全安装,没有改动。我的下一步是尝试在Debian中使用Wine,但我真的不想走这条路。任何帮助都将不胜感激。谢谢原来这是appJar/打包问题,pyinstaller没有在正确的目录中查找资产。根据appJar的开发人员,我在appJar.py中注释了两行代码,第508-509行:
if self.platform == self.WINDOWS:
self.topLevel.wm_iconbitmap(self.appJarIcon)
有关详细信息,请参见:
我可能可以通过在pyinstaller中使用--path参数来解决这个问题,但是目前,这个问题已经完全解决了
if self.platform == self.WINDOWS:
self.topLevel.wm_iconbitmap(self.appJarIcon)