繁体   English   中英

尝试使用Pyinstaller从.py脚本制作.exe时出现运行时错误

[英]Runtime error when trying to make a .exe from .py script with Pyinstaller

我正在尝试从编写的python脚本制作.exe文件。 问题是,当我从命令行运行pyinstaller时,它在构建目录中不会生成任何.exe文件,但会返回错误消息,您可以找到附件。 在此问题中,除了许多警告之外,我认为与该问题最相关的声明可能是以下RuntimeError:sip模块将API v12.0实现为v12.3,但PyQt5.QtCore模块需要API v12.4 我要做的是首先尝试在原始脚本上执行任务-该脚本包含使用Kivy开发的GUI的代码-然后切换到一个更简单的脚本,您可以在下面找到它。 请注意,我正在使用Python 3.6和PyInstaller 3.3.1,并且已经尝试通过pip3卸载并重新安装pyqt5(这解决了我收到的其他错误消息)。 我也尝试通过使用cx_Freeze来完成相同的任务,但是没有得到任何运气(可能是由于与python3.6的兼容性原因),但是我也乐于接受有关使用其他软件包的任何建议。 先谢谢您的帮助!

import pandas
import numpy as np


df = pandas.read_excel(xlsname)
df.replace(np.nan, 'NaN', inplace = True)      
schema_list = df['Schema/Owner'].unique()
ii = 1
axs_d = open(filename + '.txt','w')
for schema in schema_list:
    ref_val = 'N'
    tables_list = list(df.loc[df['Schema/Owner'] == schema].ix[:,'Nome Tabella'].unique())
    s_table = tables_list[0]
    axs_d.write('CREATE EXTR ' + activity + '.' + ext_name + "\n  DESC //'" + schema + "'//"  +
                "\n  XF //'E:\OptimFiles\XF\\" +  activity + "\\" + activity + "_EXT\\" +  activity +
                "." + ext_name + ".XF'//\n  LOCALAD (\n" + '    SRCQUAL ' + dsalias + '.' + schema +
                    ' START ' + s_table + ' ADDTBLS N MODCRIT N ADCHGS N USENEW Y' +
                    ' USEFM N PNSSTATE N SOLUTION 0\n')
    ii = ii + 1
    for table in tables_list:
        axs_d.write('    TABLE (' + table +
                    ' ACCESS SUID REF ' + ref_val + ' DAA N UR N PREDOP A VARDELIM : COLFLAG N' +
                    '\n      EXTRROWID N )\n')
        ref_val = 'Y'
    axs_d.write('  )\n  PNSOVERRIDE N PNSOPT N\n  ALWAYSPROMPT N OPTION D INCLPK N INCLFK N INCLIDX'
            + ' N INCLALIAS N INCLASSEMBLY N INCLFUNCTION N INCLPACKAGE N INCLPAR_FUNCTION N'
            + ' INCLPAR_SCHEME N\n  INCLPROCEDURE N INCLSEQUENCE N INCLTRIGGER N INCLVIEW N' +
            ' INCLDEFAULT N INCLRULE N INCLUDT N INCLMETHOD N IGNOREUNKNOWN N COMPRESSFILE Y' +
            ' COMPRESSMODEL 1\n  COMPRESSACTIVE N ENCRYPTXF N GENSTATISTIC Y PROCESS_FILEATTACH'
            + ' Y ROWLIMIT 0 DBCONNECTIONS 1 ;\n\n' )
axs_d.close()
df.to_excel(xlsname + "_new.xls",index = False)

错误讯息

我无法像在Linux和Mac上那样测试此解决方案,但是问题可能是sip模块仅需要更新。 我可以想到两个潜在的修复方法:

  1. 如果已安装sip-V ,则sip-V不应返回错误,因此请尝试运行pip3 install SIP
  2. 如果这不起作用,我将尝试使用pip3 uninstall pyqt5 ,然后再使用pip3 install pyqt5再次pip3 install pyqt5

我希望这有帮助!

通过卸载并重新安装pyqt5和sip可以修复运行时错误。 最后,修复此类错误使pyinstaller可以根据所选的python脚本定期生成所需的.exe文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM