]> sigrok.org Git - libsigrok.git/blame - README
session_file: Enable only the probes that are actually listed in metadata.
[libsigrok.git] / README
CommitLineData
13177edb
UH
1-------------------------------------------------------------------------------
2README
3-------------------------------------------------------------------------------
4
5The sigrok project aims at creating a portable, cross-platform,
a5b2293f 6Free/Libre/Open-Source signal analysis software suite that supports various
4a1c927f 7device types (such as logic analyzers, oscilloscopes, multimeters, and more).
13177edb
UH
8
9libsigrok is a shared library written in C which provides the basic API
a5b2293f
BV
10for talking to hardware and reading/writing the acquired data into various
11input/output file formats.
13177edb
UH
12
13
4a1c927f
UH
14Status
15------
16
17libsigrok is in a usable state and has had official tarball releases.
18
19While the API can change from release to release, this will always be
20properly documented and reflected in the package version number and
21in the shared library / libtool / .so-file version numbers.
22
23However, there are _NO_ guarantees at all for stable APIs in git snapshots!
24Distro packagers should only use released tarballs (no git snapshots).
25
26
13177edb
UH
27Requirements
28------------
29
0d6478d7
UH
30Requirements for the C library:
31
32 - git (only needed when building from git)
33 - gcc (>= 4.0) or clang
ef7228ba 34 - make
0d6478d7
UH
35 - autoconf >= 2.63 (only needed when building from git)
36 - automake >= 1.11 (only needed when building from git)
37 - libtool (only needed when building from git)
ef7228ba 38 - pkg-config >= 0.22
8b4f0d6a 39 - libglib >= 2.34.0
8819bf5a 40 - libzip >= 0.10
330af0ec 41 - libserialport >= 0.1.0 (optional, used by some drivers)
a9af7b1b 42 - librevisa >= 0.0.20130812 (optional, used by some drivers)
17e9317b 43 - libusb-1.0 >= 1.0.16 (optional, used by some drivers)
ab4458df 44 - libftdi >= 0.16 or libftdi1 >= 1.0 (optional, used by some drivers)
0d6478d7 45 - libgpib (optional, used by some drivers)
79bb0e97 46 - check >= 0.9.4 (optional, only needed to run unit tests)
0d6478d7
UH
47 - doxygen (optional, only needed for the C API docs)
48 - graphviz (optional, only needed for the C API docs)
49
50Requirements for the C++ bindings:
51
52 - libsigrok >= 0.3.0 (the libsigrok C library, see above)
53 - A C++ compiler with C++11 support (-std=c++11 option), e.g.
54 - g++ (>= 4.7)
55 - clang++ (>= 3.1)
56 - autoconf-archive (only needed when building from git)
57 - doxygen (required for building the bindings, not only for C++ API docs!)
58 - graphviz (optional, only needed for the C++ API docs)
59 - Python (2 or 3) executable (development files are not needed)
60 - glibmm-2.4 (>= 2.32.0)
61
62Requirements for the Python bindings:
63
64 - libsigrokxx >= 0.3.0 (the libsigrok C++ bindings, see above)
65 - Python >= 2.7 or Python >= 3 (including development files!)
66 - Python setuptools (for Python 2 or 3)
67 - pygobject >= 3.0.0 (for Python 2 or 3), a.k.a python-gi
68 - numpy (for Python 2 or 3)
69 - SWIG
70 - doxygen (optional, only needed for the Python API docs)
71 - graphviz (optional, only needed for the Python API docs)
72 - doxypy (optional, only needed for the Python API docs)
73
74Requirements for the Java bindings:
75
76 - libsigrokxx >= 0.3.0 (the libsigrok C++ bindings, see above)
77 - SWIG
78 - Java JDK (for JNI includes and the javac/jar binaries)
79 - doxygen (optional, only needed for the Java API docs)
80 - graphviz (optional, only needed for the Java API docs)
13177edb
UH
81
82
83Building and installing
84-----------------------
85
86In order to get the libsigrok source code and build it, run:
87
a5b2293f
BV
88 $ git clone git://sigrok.org/libsigrok
89 $ cd libsigrok
13177edb
UH
90 $ ./autogen.sh
91 $ ./configure
92 $ make
93
94For installing libsigrok:
95
96 $ make install
97
ba642e86 98See INSTALL or the following wiki page for more (OS-specific) instructions:
13177edb 99
ba642e86 100 http://sigrok.org/wiki/Building
13177edb
UH
101
102
c77ed446
UH
103Device-specific issues
104----------------------
f9a33a47 105
c77ed446
UH
106Please check README.devices for some notes and hints about device- or
107driver-specific issues to be aware of.
f9a33a47 108
f9a33a47 109
c77ed446
UH
110Firmware
111--------
f9a33a47 112
c77ed446
UH
113Some devices supported by libsigrok need a firmware to be uploaded before the
114device can be used. See README.devices for details.
f9a33a47
UH
115
116
6d036959
UH
117Copyright and license
118---------------------
119
120libsigrok is licensed under the terms of the GNU General Public License
121(GPL), version 3 or later.
122
123While some individual source code files are licensed under the GPLv2+, and
124some files are licensed under the GPLv3+, this doesn't change the fact that
125the library as a whole is licensed under the terms of the GPLv3+.
126
127Please see the individual source files for the full list of copyright holders.
128
129
b88c3e49
UH
130Mailing list
131------------
13177edb
UH
132
133 https://lists.sourceforge.net/lists/listinfo/sigrok-devel
13177edb
UH
134
135
136IRC
137---
138
139You can find the sigrok developers in the #sigrok IRC channel on Freenode.
140
141
142Website
143-------
144
4a1c927f 145 http://sigrok.org/wiki/Libsigrok
13177edb 146