README
El proyecto sigrok tiene como objetivo crear una suite de software de análisis de señales portátil, multiplataforma, libre/abierta y de código abierto que admita varios tipos de dispositivos (como analizadores lógicos, osciloscopios, multímetros y más).
libsigrok es una biblioteca compartida escrita en C que proporciona la API básica para comunicarse con el hardware y leer/escribir los datos adquiridos en varios formatos de archivo de entrada/salida.
Estado
libsigrok está en un estado utilizable y ha tenido lanzamientos oficiales en tarball.
Si bien la API puede cambiar de un lanzamiento a otro, esto siempre estará documentado adecuadamente y se reflejará en el número de versión del paquete y en los números de versión de la biblioteca compartida / libtool / archivo .so.
Sin embargo, NO hay garantías en absoluto de APIs estables en las instantáneas de git!
Los empaquetadores de distribuciones solo deben usar tarballs lanzados (no instantáneas de git).
Requisitos
Requisitos para la biblioteca C:
- git (solo se necesita al compilar desde git)
- gcc (>= 4.0) o clang
- make
- autoconf >= 2.63 (solo se necesita al compilar desde git)
- automake >= 1.11 (solo se necesita al compilar desde git)
- libtool (solo se necesita al compilar desde git)
- pkg-config >= 0.22
- libglib >= 2.32.0
- zlib (opcional, se usa para el cálculo de CRC32 en la entrada STF)
- libzip >= 0.11
- libtirpc (opcional, utilizado por VXI, respaldo cuando glibc >= 2.26)
- libserialport >= 0.1.1 (opcional, utilizado por algunos controladores)
- librevisa >= 0.0.20130412 (opcional, utilizado por algunos controladores)
- libusb-1.0 >= 1.0.16 (opcional, utilizado por algunos controladores)
- hidapi >= 0.8.0 (opcional, se usa para algunos "cables serie" basados en HID)
- bluez/libbluetooth >= 4.0 (opcional, se usa para comunicación Bluetooth/BLE)
- libftdi1 >= 1.0 (opcional, utilizado por algunos controladores)
- libgpib (opcional, utilizado por algunos controladores)
- libieee1284 (opcional, utilizado por algunos controladores)
- libgio >= 2.32.0 (opcional, utilizado por algunos controladores)
- nettle (opcional, utilizado por algunos controladores)
- check >= 0.9.4 (opcional, solo se necesita para ejecutar pruebas unitarias)
- doxygen (opcional, solo se necesita para la documentación de la API C)
- graphviz (opcional, solo se necesita para la documentación de la API C)
Requisitos para los enlaces de C++:
- libsigrok >= 0.4.0 (la biblioteca C de libsigrok, ver arriba)
- Un compilador de C++ con soporte C++11 (opción -std=c++11), p. ej.
- g++ (>= 4.8.1)
- clang++ (>= 3.3)
- autoconf-archive (solo se necesita al compilar desde git)
- doxygen (requerido para compilar los enlaces, no solo para la documentación de la API C++!)
- graphviz (opcional, solo se necesita para la documentación de la API C++)
- Ejecutable de Python 3 (no se necesitan archivos de desarrollo)
- glibmm-2.4 (>= 2.32.0) o glibmm-2.68 (>= 2.68.0)
Requisitos para los enlaces de Python:
- libsigrokcxx >= 0.4.0 (los enlaces de C++ de libsigrok, ver arriba)
- SWIG >= 2.0.0
- Python >= 3 (incluidos los archivos de desarrollo!)
- Python setuptools
- pygobject >= 3.0.0, también conocido como python-gi
- numpy
- doxygen (opcional, solo se necesita para la documentación de la API de Python)
- graphviz (opcional, solo se necesita para la documentación de la API de Python)
- doxypy (opcional, solo se necesita para la documentación de la API de Python)
Requisitos para los enlaces de Ruby:
- libsigrokcxx >= 0.4.0 (los enlaces de C++ de libsigrok, ver arriba)
- Ruby >= 2.5.0 (incluidos los archivos de desarrollo!)
- SWIG >= 3.0.8
- YARD (opcional, solo se necesita para la documentación de la API de Ruby)
Requisitos para los enlaces de Java:
- libsigrokcxx >= 0.4.0 (los enlaces de C++ de libsigrok, ver arriba)
- SWIG >= 2.0.0
- Java JDK (para los include de JNI y los binarios javac/jar)
- doxygen (opcional, solo se necesita para la documentación de la API de Java)
- graphviz (opcional, solo se necesita para la documentación de la API de Java)
Compilación e instalación
Para obtener el código fuente de libsigrok y compilarlo, ejecute:
$ git clone git://sigrok.org/libsigrok
$ cd libsigrok
$ ./autogen.sh
$ ./configure
$ make
Para instalar libsigrok:
$ make install
Consulte INSTALL o la siguiente página de la wiki para obtener más instrucciones (específicas del sistema operativo):
http://sigrok.org/wiki/Building
Por favor, consulte también la siguiente página de la wiki en caso de encontrar algún problema:
http://sigrok.org/wiki/Building#FAQ
Problemas específicos de dispositivos
Consulte README.devices para algunas notas y sugerencias sobre problemas específicos de dispositivos o controladores a tener en cuenta.
Firmware
Algunos dispositivos compatibles con libsigrok necesitan que se cargue un firmware antes de poder usar el dispositivo. Consulte README.devices para más detalles.
Copyright y licencia
libsigrok está licenciado bajo los términos de la Licencia Pública General de GNU (GPL), versión 3 o posterior.
Si bien algunos archivos de código fuente individuales están licenciados bajo GPLv2+, y algunos archivos están licenciados bajo GPLv3+, esto no cambia el hecho de que la biblioteca en su conjunto está licenciada bajo los términos de GPLv3+.
Consulte los archivos fuente individuales para obtener la lista completa de titulares de derechos de autor.
Lista de correo
https://lists.sourceforge.net/lists/listinfo/sigrok-devel
IRC
Puede encontrar a los desarrolladores de sigrok en el canal IRC #sigrok en Libera.Chat.
Sitio web
http://sigrok.org/wiki/Libsigrok