Mac OS X
This page describes how to build the sigrok subprojects on Mac OS X.
Building using a script under Homebrew
This is the recommended way of building sigrok from sources on MacOS at the moment. (and yes it is homebrew only)
Install build dependencies:
$ brew install libzip libftdi libusb libtool glibmm doxygen autoconf-archive sdcc python3 boost qt pkg-config cmake glib autoconf automake
Clone sigrok-util:
$ git clone git://sigrok.org/sigrok-util $ cd sigrok-util/cross-compile/macosx $ ./sigrok-native-macosx
This tool will download all the code, compile and install it in your home directory in sr_macosx directory. To use the tools you need to export the additional path.
$ export PATH=$HOME/sr_macosx/bin:$PATH
You should be now able to access all the bleeding cutting edge sigrok tools from the command line. :)
Building using Homebrew
These instructions have been tested on Mac OS X 10.9.1.
Requirements
Install Homebrew.
Tap sigrok:
$ brew tap rene-dev/sigrok
If you want PulseView, you must install unstable.
Unstable
$ brew install python3 $ brew install --HEAD libserialport $ brew install --HEAD --with-libserialport libsigrok $ brew install --HEAD libsigrokdecode $ brew install --HEAD --with-libserialport sigrok-cli $ brew install --HEAD pulseview
Stable
If you just want sigrok-cli, you can install stable.
$ brew install sigrok-cli
Building manually
These instructions have been tested on a clean install of Mac OS X 10.6.8, 10.8.4, 10.9.1 and 10.11.1.
Requirements
Install MacPorts, follow the guide on macports.org (this step will require Xcode and Command Line Tools for Xcode be installed on your machine, which are also a dependencies to build sigrok).
Install Qt, download qt-mac-opensource-4.7.4.dmg from qt.nokia.com (Only needed for PulseView).
Install git (not needed at least with 10.8.4):
$ sudo port install git-core
This will also pull in a bunch of dependencies required by git-core (and some of them also by sigrok).
Install boost, libusb, libzip and libftdi, the libsigrok build dependencies:
$ sudo port install boost libusb libzip libftdi0
Install autoconf, automake, cmake, glib2.0+, python 3.3, libtool and pkgconfig to satisfy version dependencies in the build process.
$ sudo port install autoconf automake cmake glib2 python33 libtool pkgconfig
Set the PKG_CONFIG_PATH environment variable to reflect the future locations of libsigrok and libsigrokdecode for the sigrok-cli build process.
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/
libserialport
libserialport is optional and required only for devices with serial connection, e.g. most multimeters. If not present during configuring libsigrok, the respective drivers in libsigrok will be disabled.
$ git clone git://sigrok.org/libserialport $ cd libserialport $ ./autogen.sh $ ./configure $ make $ sudo make install
libsigrok
$ git clone git://sigrok.org/libsigrok $ cd libsigrok $ ./autogen.sh $ ./configure $ make $ sudo make install
libsigrokdecode
$ git clone git://sigrok.org/libsigrokdecode $ cd libsigrokdecode $ ./autogen.sh $ ./configure $ make $ sudo make install
sigrok-cli
$ git clone git://sigrok.org/sigrok-cli $ cd sigrok-cli $ ./autogen.sh $ ./configure $ make $ sudo make install
PulseView
$ git clone git://sigrok.org/pulseview $ cd pulseview $ cmake . $ make $ sudo make install
Hint: if something goes wrong, you can see what cmake is doing by running
$ cmake VERBOSE=1
Notes
- To build on Snow Leopard (10.6) you need to use the Cocoa (32bit and 64bit) Qt libraries. Don't use the default download link on that page but the one you can find further down the page.
- Currently we are using macports for the libusb dependency and are relying on the fact that macports are installed in /opt/local.
- Python framework incorrect build for OS X issue 15353
TODO
- Find a sane way to bundle libusb with the sigrok.app.
- Include an icon with the app.
- Set the relative paths in the binary's and DyLibs.
- Building universal DyLibs and binaries.
- Bundle the dynamic libraries with MacDylibBundler.