您的位置:首页 > 编程语言 > Python开发

将Python写的tensorflow代码文件打包为exe遇到的问题

2018-12-18 11:03 567 查看

牢骚

先写点没有用的,用了这么多年的csdn终于想自己写点东西了,以前所有的问题要不是记录在本地,要不就是靠脑子记,时间长了很多问题都已经不记得了,突然想改掉一些坏习惯,想分享一些内容。
最近再研究一些深度学习的东西,还是再初步学习阶段,慢慢把我遇到的问题都会记录下来的。

将Python写的tensorflow代码文件打包为exe遇到的问题

使用的是pyinstaller进行的打包,以前就遇见过找不到qt5的问题后来解决了,在运行的环境中增加了这四个包,具体这四个包哪来的好像是在Anaconda3\Lib\site-packages中的文件。

后面在打包运行过程中遇到了:

Traceback (most recent call last):
File "site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
File "site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_helper
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 714, in load_module
ImportError: DLL load failed: 找不到指定的模块。
Traceback (most recent call last):
File "main.py", line 17, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\keras\__init__.py", line 3, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\keras\utils\__init__.py", line 6, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\keras\utils\conv_utils.py", line 9, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\keras\backend\__init__.py", line 87, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\keras\backend\tensorflow_backend.py", line 5, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\tensorflow\__init__.py", line 22, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\tensorflow\python\__init__.py", line 49, in <module>
File "d:\programfiles\anaconda3\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
File "site-packages\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
ImportError: Traceback (most recent call last):
File "site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_helper
File "imp.py", line 296, in find_module
ImportError: No module named '_pywrap_tensorflow_internal'

During handling of the above exception, another exception occurred:

解决思路

  1. 在服务上增加找不到的文件,不可用
  2. 降低tensoflow-gpu的版本,不可用
  3. 想在服务器上直接打包,服务器上没有网使用手动增加pyinstaller的方法,在我自己本地没有什么问,服务器死活不行,最后放弃了
  4. 最后想到了是不是cpu版本和gpu版本的问题,将tensorflow-gpu卸载了,安装cpu版本打包尽然成功了
    不想说什么了,心里一万个什么经过,最终还是没有解决gpu打包问题,但是用cpu的还是可以用的嘻嘻。

链接: https://blog.csdn.net/julysea_nudt/article/details/81670521.这个文章给了一些思路,可以看看。
第一次写见谅。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: