Home > development > distutils, easy_install, pip

distutils, easy_install, pip

i love Python ‘s agility. Like Perl and other prestigious communities, there are bunch of cool stuff about Python.

If you spend more and more time in writing Python code and you’re the person who is kinda lazy to reinvent the wheel, you probably resort to googling some existing stuff. And, the result is usually you can find something suitable. However, you have to install non-standard packages. Compared with compiling c/c++ for your Linux distro, installing python requires much less effort in usual cases. Before knowing pypi/easy_install, I installed new packages mostly through apt-get. This is convenient, however you don’t usually get the fresh meat. With distutils, easy_install and pypi, you will be at the cutting edge of Python community.

distutils, the original package provided by python without dependencies management. If you get an install package created with distutils, you can install the package by running “python setup.py install” (usually you need root privilege).

setuptools, an updated and network powered distutils. To install a package created by setuptools, you just install the package by running “python setup.py install” like distutils. The installation will first check if your machine have setuptools environment. If there is not the environment, it will be installed through a small bootstrap file ( ez_install.py ) contained in the package. Finally, the package will be installed through easy_install of the setuptools. easy_install like apt-get in ubuntu, you can install packages hosted in PyPI (Python Package Index). For more stuff, check the article [1].

pip, is a replacement of easy_install. It has more options like ‘uninstall’. pip can be installed through “easy_install install pip”. There is an interesting article discussing about pip and setuptools [2]. The author said in the end:

So my recommendation is that you run, not walk, over to pip, then forget about setuptools and easy_install.


  1. Hatch Python eggs with setuptools, article about easy_intall developerworks
  2. On packaging
Categories: development
  1. June 2, 2014 at 6:34 pm

    Howdy! This is my first visit to your blog!
    We are a collection of volunteers and starting a new initiative in a community in the
    same niche. Your blog provided us beneficial information to work on. You
    have done a extraordinary job!

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: