PyCall unable to use pipenv version of python InitError:Incompatible `libpython` detected
PyCall unable to use pipenv version of python InitError:Incompatible `libpython` detected
Following the instructions on the PyCall.jl readme,在我的 julia 项目(在它自己的环境中)使用 PyCall 时,我打算使用 pipenv python。
在终端中,我使用 pipenv shell
激活了 python 环境,然后找到了 python 的 pipenv 版本的路径文件。 PyCall 已经添加到我的 julia 环境中的清单中。在源激活的终端中,我启动了 Julia 并输入:ENV["PYCALL_JL_RUNTIME_PYTHON"] = pipenv python environment
然后进行到 运行 Pkg.build("PyCall")
、which installs conda。导入 PyCall 时 - using PyCall
- 我收到以下错误。
ERROR: InitError: Incompatible `libpython` detected.
`libpython` for C:\Users\me\.virtualenvs\iap\Scripts\python.exe is:
C:\Users\me\.virtualenvs\iap\Scripts\python37.dll
`libpython` for C:\Users\me\.julia\conda\python.exe is:
C:\Users\me\.julia\conda\python36.dll
PyCall.jl only supports loading Python environment using the same `libpython`
我试过重新安装 PyCall,但是 python 环境 libpython 总是抛出这个错误。我如何覆盖或以其他方式解决 base julia 的 conda 要求?
我感觉 PyCall 的 Conda 依赖性导致了一些 libpython
问题,并且 ENV["PYCALL_JL_RUNTIME_PYTHON"]
调用没有正确覆盖 libpython 变量。
根据文档 PyCall
支持 venv
和 virtualenv
环境,但是您正在使用 pipenv
。如果您想使用 PYCALL_JL_RUNTIME_PYTHON
变量,我建议您尝试使用任一受支持的替代方案。
如果您想继续使用 pipenv
环境,您可能必须在 startup.jl
配置文件中指定 PYTHON
变量,如下所示:
ENV["PYTHON"] = "C:\path\to\your\pipenv\python.exe"
然后运行:
julia> using Pkg; Pkg.build("PyCall"); using PyCall
Following the instructions on the PyCall.jl readme,在我的 julia 项目(在它自己的环境中)使用 PyCall 时,我打算使用 pipenv python。
在终端中,我使用 pipenv shell
激活了 python 环境,然后找到了 python 的 pipenv 版本的路径文件。 PyCall 已经添加到我的 julia 环境中的清单中。在源激活的终端中,我启动了 Julia 并输入:ENV["PYCALL_JL_RUNTIME_PYTHON"] = pipenv python environment
然后进行到 运行 Pkg.build("PyCall")
、which installs conda。导入 PyCall 时 - using PyCall
- 我收到以下错误。
ERROR: InitError: Incompatible `libpython` detected.
`libpython` for C:\Users\me\.virtualenvs\iap\Scripts\python.exe is:
C:\Users\me\.virtualenvs\iap\Scripts\python37.dll
`libpython` for C:\Users\me\.julia\conda\python.exe is:
C:\Users\me\.julia\conda\python36.dll
PyCall.jl only supports loading Python environment using the same `libpython`
我试过重新安装 PyCall,但是 python 环境 libpython 总是抛出这个错误。我如何覆盖或以其他方式解决 base julia 的 conda 要求?
我感觉 PyCall 的 Conda 依赖性导致了一些 libpython
问题,并且 ENV["PYCALL_JL_RUNTIME_PYTHON"]
调用没有正确覆盖 libpython 变量。
根据文档 PyCall
支持 venv
和 virtualenv
环境,但是您正在使用 pipenv
。如果您想使用 PYCALL_JL_RUNTIME_PYTHON
变量,我建议您尝试使用任一受支持的替代方案。
如果您想继续使用 pipenv
环境,您可能必须在 startup.jl
配置文件中指定 PYTHON
变量,如下所示:
ENV["PYTHON"] = "C:\path\to\your\pipenv\python.exe"
然后运行:
julia> using Pkg; Pkg.build("PyCall"); using PyCall