Skip to content

Wrong python (from wrong anaconda environment) when building PyCall with ENV["PYTHON"] #830

Closed
@h-spiess

Description

@h-spiess

Hey,

I tried to use PyCall with the python i have installed in one of my anaconda environments. Unfortunately, it picks up the wrong anaconda environment and therefore the wrong python although building PyCall in verbose mode shows that the correct python and libpython is found.

julia> using Pkg

julia> ENV["PYTHON"] = "/home/spiess/anaconda3/envs/thesis/bin/python"
"/home/spiess/anaconda3/envs/thesis/bin/python"

julia> Pkg.build("PyCall", verbose=true)
   Building Conda ─→ `~/.julia/packages/Conda/3rPhK/deps/build.log`
   Building PyCall → `~/.julia/packages/PyCall/zqDXB/deps/build.log`
[ Info: PyCall is using /home/spiess/anaconda3/envs/thesis/bin/python (Python 3.7.7) at /home/spiess/anaconda3/envs/thesis/bin/python, libpython = /mnt/antares_raid/home/spiess/anaconda3/envs/thesis/lib/libpython3.7m.so.1.0
[ Info: /mnt/antares_raid/home/spiess/.julia/packages/PyCall/zqDXB/deps/deps.jl has not changed
[ Info: /home/spiess/.julia/prefs/PyCall has not changed

julia> using PyCall

julia> PyCall.libpython
"/mnt/antares_raid/home/spiess/anaconda3/envs/twoears_conda/lib/libpython3.6m.so.1.0"

I want it to use the environment "thesis" and not "twoears_conda".

I'm also wondering why

julia> PyCall.conda
false

as the python comes from an anaconda environment. Or does this property refer to the conda which is shipped with PyCall?

I'm using the newest version of julia (1.5.2) and PyCall (1.91.4).

I would really appreciate you help. Thanks in advance,
Heiner

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions