# Install Python dependencies for PyCall.jl

**URL:** <https://discourse.julialang.org/t/install-python-dependencies-for-pycall-jl/127546>\
**Category:** General Usage\
**Tags:** package, interoperability, python\
**Created:** [March 31, 2025, 1:10pm UTC](https://discourse.julialang.org/t/install-python-dependencies-for-pycall-jl/127546 "2025-03-31T13:10:12Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![greatpet](https://avatars.discourse-cdn.com/v4/letter/g/e495f1/32.png) [@greatpet](https://discourse.julialang.org/u/greatpet)\
**Post date:** [March 31, 2025, 1:10pm UTC](https://discourse.julialang.org/t/install-python-dependencies-for-pycall-jl/127546/1 "2025-03-31T13:10:13Z")

</div>

I have an in-house package which, for legacy reasons, uses PyCall.jl instead of PythonCall.jl. My package includes a `deps/build.jl` which installs Python dependencies with e.g. `Conda.add("somepackage")`. However, PyCall.jl defaulted to the system Python and failed to import the packages installed by Conda.jl on a Linux server. Upon closer reading of the README of PyCall.jl, it seems that this is expected, as Conda.jl is the default backend for only Mac and Windows:

> By default on Mac and Windows systems, `Pkg.add("PyCall")` or `Pkg.build("PyCall")` will use the [Conda.jl](https://github.com/Luthaf/Conda.jl) package to install a minimal Python distribution (via [Miniconda](https://conda.io/projects/conda/en/latest/glossary.html#miniconda-glossary)) that is private to Julia (not in your `PATH` ).

I could tell the users of my package to manually rerun `Pkg.build("PyCall")` after specifying Conda.jl as the backend, but this is not very user-friendly, as I prefer the setup to be automatically handled by Pkg when installing my package. Any suggestions?

---

<div class="post-metadata">

**Author:** ![greatpet](https://avatars.discourse-cdn.com/v4/letter/g/e495f1/32.png) [@greatpet](https://discourse.julialang.org/u/greatpet)\
**Post date:** [April 3, 2025, 1:53pm UTC](https://discourse.julialang.org/t/install-python-dependencies-for-pycall-jl/127546/2 "2025-04-03T13:53:40Z")

</div>

OK, it seems to be a norm (e.g. [see this](https://github.com/JuliaPy/PyPlot.jl)) to ask users to manually configure PyCall.jl, so I shouldn’t worry about it.
