Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 错误1:PROJ:PROJ\u从数据库创建:使用Pyinstaller时找不到PROJ.db_Python_Pyinstaller_Gdal_Osgeo - Fatal编程技术网

Python 错误1:PROJ:PROJ\u从数据库创建:使用Pyinstaller时找不到PROJ.db

Python 错误1:PROJ:PROJ\u从数据库创建:使用Pyinstaller时找不到PROJ.db,python,pyinstaller,gdal,osgeo,Python,Pyinstaller,Gdal,Osgeo,我发现了一些关于这个错误的问题,但是我找不到适合我的解决方案 运行使用pyinstaller创建的可执行文件时,我遇到与proj.db相关的错误 我有Windows 10、Python 3.5,我的环境中有pyproj 2.4.2和gdal 3.0.4 我在python脚本中使用GDAL,我有一个环境,当我使用Pycharm测试脚本时,它对我来说运行良好。因此,我的pycharm解释器使用python 3.5、pyproj 2.4.2和gdal 3.0.4指向该环境,并且脚本运行没有问题 但是,

我发现了一些关于这个错误的问题,但是我找不到适合我的解决方案

运行使用pyinstaller创建的可执行文件时,我遇到与proj.db相关的错误

我有Windows 10、Python 3.5,我的环境中有pyproj 2.4.2和gdal 3.0.4

我在python脚本中使用GDAL,我有一个环境,当我使用Pycharm测试脚本时,它对我来说运行良好。因此,我的pycharm解释器使用python 3.5、pyproj 2.4.2和gdal 3.0.4指向该环境,并且脚本运行没有问题

但是,当我使用pyinstaller构建独立脚本时,该脚本会引发下一个错误:

`ERROR 1: PROJ: proj_create_from_database: Cannot find proj.db`
`PROJ: proj_identify: Cannot find proj.db`
`Failed to auto identify EPSG: 7`
`PROJ: proj_identify: Cannot find proj.db`
`Failed to auto identify EPSG: 7`
因此,我尝试在脚本中以不同的方式设置项目库的路径:

os.environ['GDAL_DATA'] = r'C:\Program Files\QGIS 3.4\share\gdal'
os.environ['PROJ_LIB'] = r'C:\Program Files\QGIS 3.4\share\proj'
os.environ['PROJ_LIB'] = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'proj.db')
然后再次运行pyinstaller,但它不起作用

此外,我尝试将选项“-p'path_to_osgeo'”添加到pyinstaller命令中,但没有任何操作

我不确定proj.db是来自虚拟环境还是来自计算机中的环境变量。我不知道如何告诉pyinstaller,或者如何向脚本中添加proj.db的正确路径,以便在构建可执行文件时不再出现此错误

我不知道为什么在使用pycharm运行脚本时脚本会工作,但在创建可执行文件时脚本不会工作。

有什么建议吗

多谢各位