# PyCall: install a wheel package

**URL:** <https://discourse.julialang.org/t/pycall-install-a-wheel-package/9246>\
**Category:** General Usage\
**Tags:** package, pycall\
**Created:** [February 22, 2018, 8:02am UTC](https://discourse.julialang.org/t/pycall-install-a-wheel-package/9246 "2018-02-22T08:02:10Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![phlavenk](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/phlavenk/32/1873_2.png) [@phlavenk](https://discourse.julialang.org/u/phlavenk)\
**Post date:** [February 22, 2018, 8:02am UTC](https://discourse.julialang.org/t/pycall-install-a-wheel-package/9246/1 "2018-02-22T08:02:10Z")

</div>

I need to install a private python package during my (private) package build process. I have it in a form of a wheel file and due to licensing I cannot upload it to public internet but need to keep it in local directory (…private git repo) such as …MyPkg/deps/private/privatepkg.whl. What is the right way to install the private dependency using build.jl to the JuliaPro installation in a way PyCall can import and call it?  
Thank you for any suggestion.

---

<div class="post-metadata">

**Author:** ![phlavenk](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/phlavenk/32/1873_2.png) [@phlavenk](https://discourse.julialang.org/u/phlavenk)\
**Post date:** [February 22, 2018, 9:43am UTC](https://discourse.julialang.org/t/pycall-install-a-wheel-package/9246/3 "2018-02-22T09:43:47Z")

</div>

After some try-and-fail, I’ve come up with a solution.  
All private .whl files stored in MyPkg/deps/download

build.jl:

```julia
info("Instalation of MyPkgto julia-python")
using PyCall
@pyimport pip
d = pwd()
cd(joinpath(Pkg.dir("MyPkg"), "deps", "downloads"))
info("....installing my_private_pkg")
pip.main(["install", "-f .", "my_private_pkg"])
info("Finished instalation of MyPkg")

```
