首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于pyinstaller和pyproj的问题

关于pyinstaller和pyproj的问题
EN

Stack Overflow用户
提问于 2013-11-25 19:26:56
回答 3查看 3.1K关注 0票数 6

我正在尝试用pyinstaller做一个独立的应用程序。可执行文件构建得很好,但是当我试图使用与库pyproj集成的函数执行一些操作时,可执行文件就会崩溃。

这个脚本在Pycharm上运行得很好,所以我认为问题在于,pyinstaller没有链接到某种类型的pyproj库。

我可以在用pyinstaller构建的独立应用程序上使用spec文件或其他东西来指定pyproj吗?

这是我所犯的错误:

代码语言:javascript
复制
Traceback (most recent call last):   File "<string>", line 6, in
<module>   File "C:\pyproj\build\main\out00-PYZ.pyz\pyproj", line 343,
in __new__   File "_proj.pyx", line 85, in _proj.Proj.__cinit__
(_proj.c:1190) 
RuntimeError: no system list, errno: 2

这是我的main.py

代码语言:javascript
复制
 #!/usr/bin/env python
 # -*- coding: utf-8 -*-

 import pyproj 
 print pyproj.__version__ 
 p=pyproj.Proj(init='EPSG:4326')

提前感谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-01-13 13:23:42

问题是当与PyInstaller一起使用pyproj时,pyproj无法找到库文件夹中的数据文件。

解决方案是创建一个钩子文件,它将指定数据文件的位置,这样您就可以将它们与我们的可执行文件链接起来。

代码语言:javascript
复制
 hook-pyproj.py

 from PyInstaller.hooks.hookutils import collect_data_files
 datas = collect_data_files('pyproj')

钩子文件可以位于Pyinstaller安装上的“钩子”文件夹上,也可以使用顺序--附加-钩子-dir,指定一个将位于“钩子-pyproj.py”的文件夹。

票数 4
EN

Stack Overflow用户

发布于 2016-02-03 22:33:10

仅对前面的答案进行线程处理,自2014年以来,对PyInstaller进行了一些重构,下面是上述钩子文件的正确导入行:

代码语言:javascript
复制
from PyInstaller.utils.hooks import collect_data_files
datas = collect_data_files('pyproj')
票数 1
EN

Stack Overflow用户

发布于 2017-06-20 20:43:28

从PyInstaller.hooks.hookutils导入collect_data_files数据= collect_data_files('pyproj')

  • 这对我没用。可执行文件中又出现了一些错误。

但我在另一条帖子中发现,这个问题可以通过以下方式解决:

代码语言:javascript
复制
from mpl_toolkits.basemap import pyproj as pyproj

pyinstaller似乎在集成pyproj模块本身方面存在问题,但是basemap包含pyproj,并且不能被pyinstaller忽略。

只是为了更新

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20201532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档