Revision as of 15:54, 9 July 2016 by Lock42 (talk | contribs)
Other languages:

Installing Siril from binaries

Siril is currently available as binaries only for the released packages like 0.9.1. The binary package is available on Debian testing and unstable, on many architectures. It is also available on Ubuntu wily and vivid.

For other operating systems, please use the source method below. Windows is completely unsupported. If you can, consider making an installation process or a package for your operating system. A Mac OS X binary package may become available in the coming weeks.

Installation from source

Installation from source is recommended if you want the latest features, if the past release is getting old or if you want to participate in improving Siril. Many users are reporting tweaks they would like, and we often implement them very rapidly, so that would be the only way to benefit from it.

The sources are stored on a subversion repository, you can download them with this command the first time:

svn co https://free-astro.org/svn/siril/branches/0.9/ siril

And update it the following times by typing svn up in the base directory.

Below is a list of dependencies. Siril relies on the autotools compilation configuration system and once the source has been downloaded and the system is ready, the general way to build it is as such:

$ ./autogen.sh
$ make
$ make install
possibly with superuser privileges.

You may want to pass specific options to the compiler, for example like that if you want optimisation and installation in /opt instead of the default /usr/local:

CFLAGS='-mtune=native -O2' ./autogen.sh --prefix=/opt

To launch Siril, the command name is siril.

Dependencies

Siril depends on a number of libraries, most of which should be available in your operating system if it is recent enough. The names of the packages specific to operating systems are listed in each section below. Mandatory dependencies are:

  • gtk+-3.6 (Graphical user interface library)
  • cfitsio (FITS images support)
  • fftw (Discrete Fourier Transform library)
  • gsl-1.* (The GNU Scientific Library), version 2 is supported starting with release 0.9.1 and SVN revision 1040.
  • libconfig++ (Structured configuration files support)

Optional dependencies are:

  • libraw, libtiff, libjpeg, libpng, giflib for RAW, TIFF, JPE, PNG and GIF images import and export. The libraries are detected at compilation-time.
  • FFMS2 for film native support as image sequences. It also allows frames to be extracted from many kinds of film, for other purposes than astronomy. Versions < 2.20 have an annoying bug. It is recommanded to install the last version.
  • OpenCV and a C++ compiler for some image operations.

Build dependencies

To install from source, you will have to install the base development packages: autoconf, automake, libtool, intltool, pkg-tools, make, gcc and optionally g++ if you wish to use OpenCV. You'll probably want subversion too, to download the latest version on the source repository.

Siril is developed with Arch Linux, which has all latest packages versions, and under Debian testing. This allows us to verify a large range of package versions.

Installing on Debian

Debian 6 doesn't have GTK+ version 3, and Debian 7 has partial support for all the features we use in GTK+ (version 3.4 while our minimum is supposed to be 3.4). You can still make it work with Debian 7 but Debian 8, codename Jessie is recommended. For a desktop system, the next stable is probably the better choice, called Debian testing, currently version 9 with codename Stretch.

  • Packages required for the build system:

autoconf automake make gcc libtool pkg-config

  • List of packages for mandatory dependencies:

libfftw3-dev libgsl0-dev libcfitsio3-dev libgtk-3-dev libconfig++-dev

  • List of packages for optional dependencies:

libpng-dev libjpeg-dev libtiff5-dev libraw-dev libgif-dev, for film (AVI and others) support: libffms2-dev, and for image resizing, rotation and others: libopencv-dev and g++.

Note that libtiff5 is incompatible with OpenCV in debian 7, in that case you need to install libtiff4 instead. And in debian 8, libjpeg8-dev has been replaced by libjpeg62-turbo-dev, which is also installed by libtiff5-dev.

Installing on Ubuntu

A list of dependencies has been reported for Ubuntu 14.10, for building the executable from source. Use the following command to install all of them:

sudo apt-get -y install automake autoconf build-essential intltool libgtk-3-dev fftw3-dev libgsl0-dev libcfitsio3-dev libconfig++-dev libtiff-dev libjpeg-dev libraw-dev libffms2-dev libopencv-dev libgif-dev

WARNING: make sure that libgif-dev has a version number greater or equal than 5. If not, remove libgif-dev and install the library from sources:
https://sourceforge.net/projects/giflib/ by making:
./configure
make
sudo make install

Then proceed with the normal procedure, and use sudo make install to install Siril.

Installing on Arch Linux

Vincent maintains an AUR package for Siril. Download the tarball, run makepkg to build the package and pacman -U to install the package.

Installing on FreeBSD 10

The list of dependencies is basically the same as for other OS, below are a list for build dependencies and a list of Siril dependencies:

$ pkg install autotools gmake pkgconf libtool

$ pkg install libconfig gtk3 fftw3 gsl cfitsio libraw opencv giflib

The only package not available as binary is ffms2, for film files handling, you will need to compile it from source.

Compilation and the software are working fine with the default clang (cc) compiler. However, in its current version, clang does not support OpenMP, the language extension / library that we use for parallelism, which means Siril will probably be slower, for stacking in particular. Recently, clang 3.8 appeared in FreeBSD 10 with OpenMP support (clang38 in pkg), and Siril can be compiled with it using the following configure command:

CC=clang38 CXX=clang38 LD=clang++38 LDFLAGS='-L/usr/local/llvm38/lib' ./autogen.sh

It is also possible to install gcc 4.8 or gcc 5 in FreeBSD. Make sure to link with the OS official compiler however, cc or c++ and not gcc or g++, otherwise the generated binary will be incorrect. That's also why the -lgomp is required to link it:

$ CC=gcc5 LDFLAGS="-Wl,-rpath=/usr/local/lib/gcc5 -L/usr/local/lib/gcc5 -lgomp" ./autogen.sh

Installing on Mac OS X

This is an installation procedure for Siril under Mac OS X 10.10 (Yosemite).

Install XCode via the App Store (free software).

Install XQuartz via http://xquartz.macosforge.org/landing/ (free software)

Install the command line tools by typing in a Terminal window: xcode-select --install

Install the MacPorts software (free): http://www.macports.org (Follow the installation instructions on this site.)

The following is done in a Terminal window. One should first install some libraries:
sudo port install gcc49
sudo port install automake
sudo port install autoconf
sudo port install gtk3
sudo port install gnome-themes-standard
sudo port install librsvg
sudo port install cfitsio
sudo port install fftw-3
sudo port install gsl
sudo port install libconfig-hr
sudo port install gnome-font-viewer

Now we want to make available multithreading in cfitsio: In the following directory:
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/science/cfitsio

Edit the file: Portfile

Change the line
configure.cflags -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
by
configure.cflags -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT

Then:
sudo port uninstall cfitsio
sudo port -s install cfitsio

Also install some optional dependencies (recommanded):
sudo port install libraw
sudo port install tiff
sudo port install libpng
sudo port install opencv

Now you can manually install libjpeg (if you want to work with JPEG files):
curl --remote-name http://www.ijg.org/files/jpegsrc.v9a.tar.gz
tar -xzvf jpegsrc.v9a.tar.gz
cd jpeg-9a
./configure --prefix=/usr/local
make
sudo make install

Now you can manually install giflib (if you want to be able to export GIF files) which is too old in macport:
Download giflib sources at this url:
https://sourceforge.net/projects/giflib/
and put the file in your home directory
tar -jxvf giflib-5.1.2.tar.bz2
cd giflib-5.1.2
./configure
make
sudo make install

Install the ffms2 library which is not present in MacPorts. Download it here: https://github.com/FFMS/ffms2, in the ffms2 folder, type from the terminal: ./configure --prefix=/opt/local
make
sudo make install

Download the SIRIL sources:

svn co https://free-astro.org/svn/siril/branches/0.9/ siril

In the terminal go to the siril folder:

cd siril

Generate the configure file by typing:

autoreconf -fi

Then run
./autogen.sh
make
To install Siril, use the usual:

sudo make install

Launch Siril:

siril

Enjoy!