Difference between revisions of "Linux"

From sigrok
Jump to navigation Jump to search
(Mention libudev, small fixes.)
m
Line 1: Line 1:
[[File:sigrok linux.png|right|thumb|320px|sigrok-gui on Linux]]
[[File:sigrok linux.png|right|thumb|320px|sigrok-gui on Linux]]


This page describes how to build sigrok on Linux.
This page describes how to build/install sigrok on Linux.


== Requirements ==
== Distribution packages ==
 
There are no distribution packages, yet, but some are being worked on.
 
* Debian / Ubuntu: [[User:Uwe Hermann|Uwe Hermann]] will create [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=579600 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)
* git (for cloning the source code repository)
Line 17: Line 26:
* [http://qt.nokia.com Qt + Qt Creator] >= 4.5 (optional, only required for building/editing the GUI)
* [http://qt.nokia.com Qt + Qt Creator] >= 4.5 (optional, only required for building/editing the GUI)


== Installing the build-dependencies ==
=== 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.
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.
Line 30: Line 39:
  $ '''yum install gcc-c++ libtool glib2-devel libftdi-devel libusb1-devel libzip-devel qt-devel python-devel'''
  $ '''yum install gcc-c++ libtool glib2-devel libftdi-devel libusb1-devel libzip-devel qt-devel python-devel'''


== Building ==
=== Building ===


  $ '''git clone git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok'''
  $ '''git clone git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok'''
Line 47: Line 56:
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.
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 ==
=== Pitfalls ===


If you get this error:
If you get this error:
Line 57: Line 66:
  $ '''sudo ldconfig /usr/local/lib'''
  $ '''sudo ldconfig /usr/local/lib'''


== Test it ==
=== Testing ===


Scan for devices:
Scan for devices:
Line 72: Line 81:


See [[Command-line]] for further usage.
See [[Command-line]] for further usage.
== Distribution packages ==
* Debian / Ubuntu: [[User:Uwe Hermann|Uwe Hermann]] will create [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=579600 packages for Debian unstable] (which will semi-automatically migrate to Ubuntu after a while).
* Fedora: See [[Linux/Fedora]].

Revision as of 18:45, 16 January 2011

sigrok-gui on Linux

This page describes how to build/install sigrok on Linux.

Distribution packages

There are no distribution packages, yet, but some are being worked on.

Building from source

Requirements

  • git (for cloning the source code repository)
  • gcc, g++, make, ...
  • autoconf, automake, libtool, pkg-config
  • libglib >= 2.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

$ git clone git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok
$ cd sigrok
$ ./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.