最近在写一个通过Python调用Matlab进行数据处理的程序,发现Python调用Matlab包可以在本机编译并输出结果,但是当我使用Pyinstaller把项目打包成可执行文件后运行exe文件后,报出SystemErro:Cannot find CTF archive的错误。
回过头来发现,我忘记了两个步骤。
第一:在使用Matlab中deploytool打包工具时,没有勾选Runtime included in package,即没有预先安装MCR至Matlab包里。
如果本机没有安装过MCR,可以区CSDN上搜索相关博客。
第二:在完成第一步的基础上,还是出现 SystemErro:Cannot find CTF archive问题,在查阅资料后发现,原来在你打包成exe文件时,需要把MCR依赖的CTF文件一起打包。也即在xxx.spec文件的
datas中添加相应的文件。如何生成SPEC文件及其他打包问题可看此链接。
如图
文件路径如图:
相应的其他问题可参考此链接。
在加入ctf文件后,我的问题就完美解决了。