首页 PaddleX 帖子详情
win下PaddleX 2.0.0-rc4 OSError:找不到指定的模块问题修复
收藏
快速回复
PaddleX 问答解决方案 1376 4
win下PaddleX 2.0.0-rc4 OSError:找不到指定的模块问题修复
收藏
快速回复
PaddleX 问答解决方案 1376 4

win10下使用PaddleX 2.0.0-rc4 报OSError: [WinError 126] 找不到指定的模块错误:

(p2) H:\test>python predict.py
f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\paddle\distributed\parallel.py:120: UserWarning: Currently not a parallel execution environment, `paddle.distributed.init_parallel_env` will not do anything.
  "Currently not a parallel execution environment, `paddle.distributed.init_parallel_env` will not do anything."
Traceback (most recent call last):
  File "predict.py", line 10, in 
    import paddlex as pdx
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\paddlex\__init__.py", line 20, in 
    from . import cv
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\paddlex\cv\__init__.py", line 15, in 
    from . import models
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\paddlex\cv\models\__init__.py", line 15, in 
    from .segmenter import *
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\paddlex\cv\models\segmenter.py", line 24, in 
    from paddlex.cv.transforms import arrange_transforms
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\paddlex\cv\transforms\__init__.py", line 15, in 
    from .operators import *
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\paddlex\cv\transforms\operators.py", line 27, in 
    from .functions import normalize, horizontal_flip, permute, vertical_flip, center_crop, is_poly, \
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\paddlex\cv\transforms\functions.py", line 18, in 
    import shapely.ops
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\shapely\ops.py", line 13, in 
    from shapely.prepared import prep
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\shapely\prepared.py", line 5, in 
    from shapely.geos import lgeos
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\site-packages\shapely\geos.py", line 154, in 
    _lgeos = CDLL(os.path.join(sys.prefix, 'Library', 'bin', 'geos_c.dll'))
  File "f:\Users\livingbody\miniconda3\envs\p2\lib\ctypes\__init__.py", line 364, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] 找不到指定的模块。

 

从字面意思看是shaplely的 geos_c.dll库找不到,搜索发现其实该dll已经存在于shaply安装位置,只是和查找的位置不一样。

安装完shapley,在F:\Users\livingbody\miniconda3\envs\p2\Lib\site-packages\shapely\DLLs目录下存在:geos.dll  geos_c.dll。

但是从上述错误提示,是去lgeos = CDLL(os.path.join(sys.prefix, 'Library', 'bin', 'geos_c.dll'))这个位置找这个动态库,这就见鬼了。。。。。。

于是乎:拷贝geos.dll  geos_c.dl 到  F:\Users\livingbody\miniconda3\envs\p2\Library\bin(对应自己环境的Library)目录下即可,问题解决。

就这么离谱

0
收藏
回复
全部评论(4)
时间顺序
JavaRoom
#2 回复于2021-09

就这个东西。。。

0
回复
JavaRoom
#3 回复于2021-09

难道其他人没遇到?

0
回复
飞桨_Paddle3D
#4 回复于2021-10

windows上,在conda环境内通过pip install shapely后会出现该问题,具体可以看shapely issue Toblerity/Shapely#1032

该问题在PaddleX github上有同样的issue,可以参考https://github.com/PaddlePaddle/PaddleX/issues/1064 进行解决

0
回复
JavaRoom
#5 回复于2021-10
windows上,在conda环境内通过pip install shapely后会出现该问题,具体可以看shapely issue Toblerity/Shapely#1032 该问题在PaddleX github上有同样的issue,可以参考https://github.com/PaddlePaddle/PaddleX/issues/1064 进行解决
展开

好嘞,我瞅瞅,目前解决了。

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户