README
Il progetto sigrok mira a creare una suite software di analisi dei segnali
portabile, multipiattaforma e Free/Libre/Open-Source che supporti vari tipi
di dispositivi (come analizzatori logici, oscilloscopi, multimetri e altro).
libsigrok è una libreria condivisa scritta in C che fornisce l'API di base
per comunicare con l'hardware e per leggere/scrivere i dati acquisiti in vari
formati di file di ingresso/uscita.
Stato
libsigrok è in uno stato utilizzabile e ha avuto rilasci ufficiali in tarball.
Sebbene l'API possa cambiare da un rilascio all'altro, questo sarà sempre
documentato correttamente e riflesso nel numero di versione del pacchetto e
nei numeri di versione della libreria condivisa / libtool / file .so.
Tuttavia, NON ci sono affatto garanzie di API stabili negli snapshot git!
I packager delle distribuzioni dovrebbero usare solo tarball rilasciati
(niente snapshot git).
Requisiti
Requisiti per la libreria C:
- git (necessario solo quando si compila da git)
- gcc (>= 4.0) o clang
- make
- autoconf >= 2.63 (necessario solo quando si compila da git)
- automake >= 1.11 (necessario solo quando si compila da git)
- libtool (necessario solo quando si compila da git)
- pkg-config >= 0.22
- libglib >= 2.32.0
- zlib (opzionale, usato per il calcolo CRC32 nell'input STF)
- libzip >= 0.11
- libtirpc (opzionale, usato da VXI, fallback quando glibc >= 2.26)
- libserialport >= 0.1.1 (opzionale, usato da alcuni driver)
- librevisa >= 0.0.20130412 (opzionale, usato da alcuni driver)
- libusb-1.0 >= 1.0.16 (opzionale, usato da alcuni driver)
- hidapi >= 0.8.0 (opzionale, usato per alcuni "cavi seriali" basati su HID)
- bluez/libbluetooth >= 4.0 (opzionale, usato per la comunicazione Bluetooth/BLE)
- libftdi1 >= 1.0 (opzionale, usato da alcuni driver)
- libgpib (opzionale, usato da alcuni driver)
- libieee1284 (opzionale, usato da alcuni driver)
- libgio >= 2.32.0 (opzionale, usato da alcuni driver)
- nettle (opzionale, usato da alcuni driver)
- check >= 0.9.4 (opzionale, necessario solo per eseguire i test di unità)
- doxygen (opzionale, necessario solo per la documentazione dell'API C)
- graphviz (opzionale, necessario solo per la documentazione dell'API C)
Requisiti per i binding C++:
- libsigrok >= 0.4.0 (la libreria C libsigrok, vedi sopra)
- Un compilatore C++ con supporto C++11 (opzione -std=c++11), ad es.
- g++ (>= 4.8.1)
- clang++ (>= 3.3)
- autoconf-archive (necessario solo quando si compila da git)
- doxygen (richiesto per compilare i binding, non solo per la documentazione dell'API C++!)
- graphviz (opzionale, necessario solo per la documentazione dell'API C++)
- Eseguibile Python 3 (i file di sviluppo non sono necessari)
- glibmm-2.4 (>= 2.32.0) o glibmm-2.68 (>= 2.68.0)
Requisiti per i binding Python:
- libsigrokcxx >= 0.4.0 (i binding C++ libsigrok, vedi sopra)
- SWIG >= 2.0.0
- Python >= 3 (inclusi i file di sviluppo!)
- Python setuptools
- pygobject >= 3.0.0, noto anche come python-gi
- numpy
- doxygen (opzionale, necessario solo per la documentazione dell'API Python)
- graphviz (opzionale, necessario solo per la documentazione dell'API Python)
- doxypy (opzionale, necessario solo per la documentazione dell'API Python)
Requisiti per i binding Ruby:
- libsigrokcxx >= 0.4.0 (i binding C++ libsigrok, vedi sopra)
- Ruby >= 2.5.0 (inclusi i file di sviluppo!)
- SWIG >= 3.0.8
- YARD (opzionale, necessario solo per la documentazione dell'API Ruby)
Requisiti per i binding Java:
- libsigrokcxx >= 0.4.0 (i binding C++ libsigrok, vedi sopra)
- SWIG >= 2.0.0
- Java JDK (per gli include JNI e i binari javac/jar)
- doxygen (opzionale, necessario solo per la documentazione dell'API Java)
- graphviz (opzionale, necessario solo per la documentazione dell'API Java)
Compilazione e installazione
Per ottenere il codice sorgente di libsigrok e compilarlo, eseguire:
$ git clone git://sigrok.org/libsigrok
$ cd libsigrok
$ ./autogen.sh
$ ./configure
$ make
Per installare libsigrok:
$ make install
Vedere INSTALL o la seguente pagina wiki per ulteriori istruzioni (specifiche per sistema operativo):
http://sigrok.org/wiki/Building
In caso di problemi, controllare anche la seguente pagina wiki:
http://sigrok.org/wiki/Building#FAQ
Problemi specifici dei dispositivi
Consultare README.devices per note e suggerimenti su problemi specifici dei
dispositivi o dei driver.
Firmware
Alcuni dispositivi supportati da libsigrok richiedono il caricamento di un
firmware prima che il dispositivo possa essere utilizzato. Vedere
README.devices per i dettagli.
Copyright e licenza
libsigrok è concesso in licenza secondo i termini della GNU General Public
License (GPL), versione 3 o successiva.
Sebbene alcuni singoli file di codice sorgente siano concessi in licenza
GPLv2+ e alcuni file GPLv3+, ciò non cambia il fatto che la libreria nel suo
complesso è concessa in licenza secondo i termini della GPLv3+.
Vedere i singoli file sorgente per l'elenco completo dei detentori del
copyright.
Mailing list
https://lists.sourceforge.net/lists/listinfo/sigrok-devel
IRC
Potete trovare gli sviluppatori di sigrok nel canale IRC #sigrok su Libera.Chat.
Sito web
http://sigrok.org/wiki/Libsigrok