Update CHANGES, add 3.6 testing to Travis and fixup README
[pyelftools.git] / README.rst
1 Introduction: what is pyelftools?
2 ---------------------------------
3
4 **pyelftools** is a pure-Python library for parsing and analyzing ELF files
5 and DWARF debugging information. See the
6 `User's guide <https://github.com/eliben/pyelftools/wiki/User's-guide>`_
7 for more details.
8
9 Pre-requisites
10 --------------
11
12 As a user of **pyelftools**, one only needs Python to run. It works with
13 Python versions 2.7 and 3.x (x >= 2). For hacking on **pyelftools** the
14 requirements are a bit more strict, please see the
15 `hacking guide <https://github.com/eliben/pyelftools/wiki/Hacking-guide>`_.
16
17 Installing
18 ----------
19
20 **pyelftools** can be installed from PyPI (Python package index)::
21
22 > pip install pyelftools
23
24 Alternatively, you can download the source distribution for the most recent and
25 historic versions from the *Downloads* tab on the `pyelftools project page
26 <https://github.com/eliben/pyelftools>`_ (by going to *Tags*). Then, you can
27 install from source, as usual::
28
29 > python setup.py install
30
31 Since **pyelftools** is a work in progress, it's recommended to have the most
32 recent version of the code. This can be done by downloading the `master zip
33 file <https://github.com/eliben/pyelftools/archive/master.zip>`_ or just
34 cloning the Git repository.
35
36 Since **pyelftools** has no external dependencies, it's also easy to use it
37 without installing, by locally adjusting ``PYTHONPATH``.
38
39 How to use it?
40 --------------
41
42 **pyelftools** is a regular Python library: you import and invoke it from your
43 own code. For a detailed usage guide and links to examples, please consult the
44 `user's guide <https://github.com/eliben/pyelftools/wiki/User's-guide>`_.
45
46 License
47 -------
48
49 **pyelftools** is open source software. Its code is in the public domain. See
50 the ``LICENSE`` file for more details.
51
52 CI Status
53 ---------
54
55 **pyelftools** has automatic testing enabled through the convenient
56 `Travis CI project <https://travis-ci.org>`_. Here is the latest build status:
57
58 .. image:: https://travis-ci.org/eliben/pyelftools.png?branch=master
59 :align: center
60 :target: https://travis-ci.org/eliben/pyelftools