Difference between revisions of "Windows"
Uwe Hermann (talk | contribs) m (→sigrok) |
Uwe Hermann (talk | contribs) m (→GTK+ GUI) |
||
Line 149: | Line 149: | ||
Download the latest versions of the following Windows binaries and extract them into '''c:\MinGW\msys\1.0\local''': | Download the latest versions of the following Windows binaries and extract them into '''c:\MinGW\msys\1.0\local''': | ||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/ ...] | * [http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/ gtk+ and gtk+-dev] | ||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/ fontconfig and fontconfig-dev] | |||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/gdk-pixbuf/ gdk-pixbuf and gdk-pixbuf-dev] | |||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/ cairo and cairo-dev] | |||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/pango/ pango and pango-dev] | |||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/atk/ atk and atk-dev] | |||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/ freetype and freetype-dev] | |||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/ libpng and libpng-dev] | |||
* [http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/ expat and expat-dev] | |||
=== sigrok === | === sigrok === |
Revision as of 22:34, 19 November 2011
Status
We intend to fully support all major operating systems in sigrok, including Windows. However, we're not quite there, yet, various portability issues need to be addressed still. The table below lists the current Windows status of the various hardware drivers.
Logic analyzer | Windows status |
---|---|
Saleae Logic | libusb-1.0 issues need to be sorted out. |
EE Electronics XLA/ESLA100 | libusb-1.0 issues need to be sorted out. |
ASIX SIGMA | Compiles fine using libftdi + libusb-0.1-win32 (not runtime-tested, though). |
Openbench Logic Sniffer | Serial port portability fixes required (partially implemented, but unfinished). |
ZEROPLUS Logic Cube LAP-C | Untested, but uses libusb-1.0, so there may be issues. |
Link Instruments MSO-19 | Doesn't compile due to libudev dependency. TODO: Make libudev optional. |
ChronoVu LA8 | Works fine using libftdi + libusb-0.1-win32. |
Demo driver | Works fine. |
Self-extracting installer
Work in progress.
Currently only the command-line tool sigrok-cli is fully supported, but (for testing purposes) the Qt GUI and the GTK+ GUI are installed, too.
Building from source
This page describes how to build sigrok on Windows.
TortoiseGit
For checking out the sigrok source code you can use TortoiseGit on Windows.
- Download and install the latest version (for 32bit or 64bit Windows) of TortoiseGit (just double-click the *.msi installer).
- Download and install the latest version of the "full installer" of MSysGit (double-click the *.exe installer).
MinGW/MSYS
In order to build sigrok and various of its dependencies, we need a UNIX-like environment on Windows, which is provided by MinGW/MSYS.
- Download the latest version of the automated MinGW installer named mingw-get-inst (double-click the installer EXE file, which will download and install all components).
- Make sure you enable "MinGW Compiler Suite", "C++ compiler", "MSYS Basic System", and "MinGW Developer Toolkit" in the installer.
- For simplicity it's recommended to leave the default install location of c:\MinGW unchanged.
Now open a MinGW shell via Start/Programs/MinGW/MinGW Shell and do the following:
$ mingw-get update $ mingw-get install msys-wget msys-unzip
autotools
Installing the autotools (if not already done) is as simple as:
$ mingw-get install autoconf automake libtool
Additional files for sigrok
Unfortunately, not all binary packages needed for a sigrok build come with a pkg-config .pc file, thus we provide our own files for simplicity. Extract the following into c:\MinGW\msys\1.0\local:
libglib
sigrok also needs libglib >= 2.22.0, which in turn needs pkg-config . Download the latest versions of the respective Windows binaries and extract them into c:\MinGW\msys\1.0\local:
Then run:
$ cd /c/MinGW/bin $ cp libintl-8.dll intl.dll
libusb 1.0
$ git clone git://git.libusb.org/libusb-pbatard.git (or use TortoiseGit) $ cd libusb-pbatard $ ./autogen.sh $ touch configure $ make $ make install
libftdi + libusb-0.1-win32
- Download and execute libusb-win32-devel-filter-1.2.5.0.exe.
- Download and extract libusb-win32-bin-1.2.5.0.zip.
- Rename bin/x86/libusb0_x86.dll to libusb0.dll and copy it to /usr/local/bin.
- Rename include/lusb0_usb.h to usb.h and copy it to /usr/local/include.
- Copy lib/gcc/libusb.a to /usr/local/lib.
- Install libftdi. The easiest method is probably to use the libftdi-0.19_mingw32.zip binaries from here.
- Extract the ZIP file into a temporary directory.
- Copy dll/libftdi.dll to /usr/local/bin.
- Copy lib/libftdi.a and lib/libftdi.dll.a to /usr/local/lib.
- Copy include/ftdi.h to /usr/local/include.
zlib
Download the latest versions of the respective Windows binaries and extract them into c:\MinGW\msys\1.0\local:
libzip
$ wget http://nih.at/libzip/libzip-0.10.tar.gz $ tar xfvz libzip-0.10.tar.gz $ cd libzip-0.10 $ ./configure --with-zlib=/usr/local $ make $ make install
Python
We also need Python >= 2.5 for running the sigrok protocol decoders which are written in Python. On Windows, sigrok currently assumes Python 2.6.x installed in c:\Python26.
- Download and install the latest version (currently 2.6.6) of the Python Windows installer (just double-click the *.msi installer file).
- For simplicity it's recommended to leave the default install location of c:\Python26 unchanged.
Qt GUI
In order to also build the Qt-based sigrok-gui, download the latest version (>= 4.5) of the Qt SDK for Windows (LGPL version) and double-click the installer. The download includes the Qt libraries, Qt Creator, Qt Designer, and various other Qt development tools.
GTK+ GUI
Download the latest versions of the following Windows binaries and extract them into c:\MinGW\msys\1.0\local:
- gtk+ and gtk+-dev
- fontconfig and fontconfig-dev
- gdk-pixbuf and gdk-pixbuf-dev
- cairo and cairo-dev
- pango and pango-dev
- atk and atk-dev
- freetype and freetype-dev
- libpng and libpng-dev
- expat and expat-dev
sigrok
Get the source code:
$ git clone git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok (or use TortoiseGit) $ cd sigrok
Build the libraries and command line tool:
$ ./autogen.sh $ ./configure $ make $ make install
Build the Qt GUI:
$ cd gui $ /c/QtSDK/Desktop/Qt/4.7.4/mingw/bin/qmake $ make
Build the GTK+ GUI:
$ cd gtk $ ./autogen.sh $ ./configure $ make