Search code examples
pythoneasy-installpip

Can I use `pip` instead of `easy_install` for `python setup.py install` dependency resolution?


python setup.py install will automatically install packages listed in requires=[] using easy_install. How do I get it to use pip instead?


Solution

  • Yes you can. You can install a package from a tarball or a folder, on the web or your computer. For example:

    Install from tarball on web

    pip install https://pypi.python.org/packages/source/r/requests/requests-2.3.0.tar.gz
    

    Install from local tarball

    wget https://pypi.python.org/packages/source/r/requests/requests-2.3.0.tar.gz
    pip install requests-2.3.0.tar.gz
    

    Install from local folder

    tar -zxvf requests-2.3.0.tar.gz
    cd requests-2.3.0
    pip install .
    

    You can delete the requests-2.3.0 folder.

    Install from local folder (editable mode)

    pip install -e .
    

    This installs the package in editable mode. Any changes you make to the code will immediately apply across the system. This is useful if you are the package developer and want to test changes. It also means you can't delete the folder without breaking the install.