summaryrefslogtreecommitdiff
path: root/INSTALL.rst
blob: d86c022ce4741af6657da4622b686d540d6fd2aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
PIP
===

pip is the easiest way to install psutil.
It is shipped by default with Python 2.7.9+ and 3.4+. If you're using an
older Python version `install pip <https://pip.pypa.io/en/latest/installing/>`__
first.
If you GIT cloned psutil source code you can also install pip and/or upgrade
it to latest version with::

    make install-pip

Unless you're on Windows, in order to install psutil with pip you'll also need
a C compiler installed (e.g. gcc).
pip will retrieve psutil source code or binaries from
`PYPI <https://pypi.python.org/pypi/psutil>`__ repository.

Permission issues (UNIX)
========================

The commands below assume you're running as root.
If you're not or you bump into permission errors you can either:

* prepend ``sudo``, e.g.:

::

    sudo pip install psutil

* install psutil for your user only (not at system level):

::

    pip install --user psutil

Linux
=====

Ubuntu / Debian::

    sudo apt-get install gcc python-dev python-pip
    pip install psutil

RedHat / CentOS::

    sudo yum install gcc python-devel python-pip
    pip install psutil

If you're on Python 3 use ``python3-dev`` and ``python3-pip`` instead.

Major Linux distros also provide binary distributions of psutil so, for
instance, on Ubuntu and Debian you can also do::

    sudo apt-get install python-psutil

On RedHat and CentOS::

    sudo yum install python-psutil

This is not recommended though as Linux distros usually ship older psutil
versions.

OSX
===

Install `Xcode <https://developer.apple.com/downloads/?name=Xcode>`__
first, then:

::

    pip install psutil

Windows
=======

The easiest way to install psutil on Windows is to just use the pre-compiled
exe/wheel installers hosted on
`PYPI <https://pypi.python.org/pypi/psutil/#downloads>`__ via pip::

    C:\Python27\python.exe -m pip install psutil

If you want to compile psutil from sources you'll need **Visual Studio**
(Mingw32 is no longer supported):

* Python 2.6, 2.7: `VS-2008 <http://www.microsoft.com/en-us/download/details.aspx?id=44266>`__
* Python 3.3, 3.4: `VS-2010 <http://www.visualstudio.com/downloads/download-visual-studio-vs#d-2010-express>`__
* Python 3.5+: `VS-2015 <http://www.visualstudio.com/en-au/news/vs2015-preview-vs>`__

Compiling 64 bit versions of Python 2.6 and 2.7 with VS 2008 requires
`Windows SDK and .NET Framework 3.5 SP1 <https://www.microsoft.com/en-us/download/details.aspx?id=3138>`__.
Once installed run vcvars64.bat, then you can finally compile (see
`here <http://stackoverflow.com/questions/11072521/>`__).
To compile / install psutil from sources on Windows run::

    make.bat build
    make.bat install

FreeBSD
=======

::

    pkg install python gcc
    python -m pip install psutil

OpenBSD
=======

::

    export PKG_PATH="http://ftp.openbsd.org/pub/OpenBSD/`uname -r`/packages/`arch -s`/"
    pkg_add -v python gcc
    python -m pip install psutil

NetBSD
======

::

    export PKG_PATH="ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/`uname -m`/`uname -r`/All"
    pkg_add -v pkgin
    pkgin install python gcc
    python -m pip install psutil

Solaris
=======

If ``cc`` compiler is not installed create a symlink to ``gcc``:

::

    sudo ln -s /usr/bin/gcc /usr/local/bin/cc

Install:

::

    pkg install gcc
    python -m pip install psutil

Install from sources
====================

::

    git clone https://github.com/giampaolo/psutil.git
    cd psutil
    python setup.py install


Dev Guide
=========

If you plan on hacking on psutil you may want to take a look at the
`dev guide <https://github.com/giampaolo/psutil/blob/master/DEVGUIDE.rst>`__.