一:碰到Warning:lib not found等相关问题
虽然大多数时候,您像我一样忽略这些warning,打包后的exe也能运行。网上有一堆的方法,有建议装win7的,也有建议换32位python文件的,有提示下载2G大小的相关SDK的。总之,就是pyinstaller对目前的win10支持不够友好!但是网上这些方法代价太高,那么不改win10 X64系统,不更改 python版本(3.6.4)的情况下,如何优雅地使用pyinstaller且没有满屏的warning提示呢?
pyinstaller提示找不到的这些dll文件,比如 api-ms-win-crt-runtime-l1-1-0.dll 其实 在win10系统中同样是存在的,大部分都在:C:\Windows\System32\downlevel路径和它的上层路径C:\Windows\System32 下,在环境变量中添加
二:
打包时执行的是 pyinstaller -F --onefile -w XXX.py
这样打出的包执行后提示“failed to excute script xxx”
一直没想到是哪里出了问题,后来又仔细看了下打包参数
-F, –onefile 打包成一个exe文件。
-D, –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)。
-c, –console, –nowindowed 使用控制台,无界面(默认)
-w, –windowed, –noconsole 使用窗口,无控制台
问题出在 -w 上, 因为我的脚本只是程序没有tk或是wxpython的GUI窗口,只能使用控制台
所以重新打包 执行 python pyinstaller -F --onefile xxx.py
再次执行EXE文件,会调出一个cmd窗口,然后执行程序。 证明如果程序里没做窗口的话,打包时不要使用-w 参数, 经验证后正常。