ImportError:在 vscode 中使用导入 syft 导入 lib 时 DLL 加载失败
Posted
技术标签:
【中文标题】ImportError:在 vscode 中使用导入 syft 导入 lib 时 DLL 加载失败【英文标题】:ImportError: DLL load failed while importing lib with importing syft in vscode 【发布时间】:2021-11-12 13:24:50 【问题描述】:我使用 conda 和 python 3.9.7 创建一个新环境 (my_syft env) 并安装 syft 0.5.0。
然后我检查了我的模块的安装,似乎安装正确通过了
C:\Users\tamir>conda activate my_syft_env
(my_syft_env) C:\Users\tamir>python
Python 3.9.7 (default, Sep 16 2021, 16:59:28) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import syft
>>>
>>> import sys
>>> print(sys.executable)
C:\Users\tamir\anaconda3\envs\my_syft_env\python.exe
>>>
然后在 VScode 中尝试运行并检查我的模块并选择当前环境 C:\Users\tamir\anaconda3\envs\my_syft_env\python.exe
import syft
print("hellow")
但报错
Traceback (most recent call last):
File "c:\Users\tamir\Desktop\TAMIR\pyton vscode\federated.py", line 1, in <module>
import syft
File "C:\Users\tamir\anaconda3\lib\site-packages\syft\__init__.py", line 48, in <module>
from syft.core.node.device.device import Device # noqa: F401
File "C:\Users\tamir\anaconda3\lib\site-packages\syft\core\node\device\__init__.py", line 2, in <module>
from .client import DeviceClient
File "C:\Users\tamir\anaconda3\lib\site-packages\syft\core\node\device\client.py", line 16, in <module>
from ..common.client import Client
File "C:\Users\tamir\anaconda3\lib\site-packages\syft\core\node\common\client.py", line 18, in <module>
from ....lib import create_lib_ast
File "C:\Users\tamir\anaconda3\lib\site-packages\syft\lib\__init__.py", line 28, in <module>
from ..lib.torch import create_torch_ast
File "C:\Users\tamir\anaconda3\lib\site-packages\syft\lib\torch\__init__.py", line 12, in <module>
from . import parameter # noqa: 401
File "C:\Users\tamir\anaconda3\lib\site-packages\syft\lib\torch\parameter.py", line 9, in <module>
from ...lib.torch.tensor_util import tensor_deserializer
File "C:\Users\tamir\anaconda3\lib\site-packages\syft\lib\torch\tensor_util.py", line 2, in <module>
import pyarrow as pa
File "C:\Users\tamir\anaconda3\lib\site-packages\pyarrow\__init__.py", line 63, in <module>
import pyarrow.lib as _lib
ImportError: DLL load failed while importing lib: The specified procedure could not be found.
不知道为什么会出错。
【问题讨论】:
【参考方案1】:我可能迟到了,但套用this thread,您可能已经从默认的 conda 通道安装了 libboost
和 boost-cpp
。请尝试以下操作:
conda install libboost boost-cpp -c conda-forge
如果在 Windows 计算机上,请确保您有 Visual C++ Redistributables 2019 或更高版本。
查看 pip 版本的 pyarrow 是否有效。
【讨论】:
以上是关于ImportError:在 vscode 中使用导入 syft 导入 lib 时 DLL 加载失败的主要内容,如果未能解决你的问题,请参考以下文章
ImportError: No module named 'tkinter'
开源工具将 Markdown 转为脑图,还支持 VSCode 和 Vim
VSCode 上的 pipenv shell 返回 WSAStartup failed: error code 10107