Difference between revisions of "Linux"
Uwe Hermann (talk | contribs) m (sigrok needs glib >= 2.22.0.)  | 
				 (→Building:  Update according to the new tree structure)  | 
				||
| Line 41: | Line 41: | ||
=== Building ===  | === Building ===  | ||
First, checkout the sources:  | |||
  $ '''git clone git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok'''  |   $ '''git clone git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok'''  | ||
  $ '''cd sigrok'''  |   $ '''cd sigrok'''  | ||
Then you need to build libsigrok:  | |||
 $ '''cd libsigrok'''  | |||
 $ '''./autogen.sh'''  | |||
 $ '''./configure'''  | |||
 $ '''make'''  | |||
 $ '''sudo make install'''  | |||
The same applies to libsigrokdecode:  | |||
 $ '''cd ../libsigrok'''  | |||
  $ '''./autogen.sh'''  |   $ '''./autogen.sh'''  | ||
  $ '''./configure'''  |   $ '''./configure'''  | ||
Revision as of 16:51, 4 January 2012
This page describes how to build/install sigrok on Linux.
Distribution packages
There are no distribution packages, yet, but some are being worked on.
- Debian / Ubuntu: Uwe Hermann will create packages for Debian unstable (which will semi-automatically migrate to Ubuntu after a while).
 - Fedora: See Linux/Fedora.
 
Building from source
Requirements
- git (for cloning the source code repository)
 - gcc, g++, make, ...
 - autoconf, automake, libtool, pkg-config
 - libglib >= 2.22.0
 - libusb >= 1.0.5
 - libzip >= 0.8
 - libftdi (optional, only required for some devices)
 - libudev >= 151 (optional, only required for some devices)
 - Python >= 2.5 (optional, only required for protocol decoders)
 - Qt + Qt Creator >= 4.5 (optional, only required for building/editing the GUI)
 
Installing the build-dependencies
On most Linux distributions there are pre-built packages for the sigrok dependencies (if not, you have to build the packages from source). The installation using a package manager is usually pretty simple.
Debian/Ubuntu:
$ sudo apt-get install git-core gcc g++ make autoconf automake libtool pkg-config \ libglib2.0-dev libftdi-dev libudev-dev libusb-1.0-0-dev libzip-dev python-dev qtcreator qt4-designer qt4-dev-tools libqt4-dev
Fedora:
$ yum install gcc-c++ libtool glib2-devel libftdi-devel libusb1-devel libzip-devel qt-devel python-devel
Building
First, checkout the sources:
$ git clone git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok $ cd sigrok
Then you need to build libsigrok:
$ cd libsigrok $ ./autogen.sh $ ./configure $ make $ sudo make install
The same applies to libsigrokdecode:
$ cd ../libsigrok $ ./autogen.sh $ ./configure $ make $ sudo make install
Then, for building the GUI (Note: The GUI is not yet usable!):
$ cd gui $ qmake $ make
If you get warnings claiming potential symbol conflicts when running qmake, you are likely invoking qmake-qt4. Try running qmake-qt4 to force the correct version.
Pitfalls
If you get this error:
sigrok-cli: error while loading shared libraries: libsigrok.so.0: cannot open shared object file: No such file or directory
Then you have to rebuild the links to your shared libraries:
$ sudo ldconfig /usr/local/lib
Testing
Scan for devices:
$ sigrok-cli -D The following devices were found: ID Device 0 Zeroplus Logic Cube with 32 probes demo Demo device with 8 probes
Get 10 samples from device 0 (Zeroplus Logic Cube in this example):
$ sigrok-cli -d 0 --samples 10
See Command-line for further usage.