(Updating to match new version of source page)
(Updating to match new version of source page)
(35 intermediate revisions by the same user not shown)
Line 1: Line 1:
<languages />
<languages />
We maintain Siril binaries in many operating systems, but in general only for the [[Siril:releases|official releases]]. If your operating system has no binary version or if you want to customize it, you will have to build it [[#Installation_from_source|from source]].
=Installing Siril from binaries=
=Installing Siril from binaries=


Siril is currently available as binaries only for the released packages like [[Siril:0.9.4|0.9.4]].
==Debian[[File:Debian_logo.png|48px|frameless|link=|middle]]==
==Debian [[File:Debian_logo.png|48px|frameless|link=|middle]]==
The binary package is available on Debian [https://packages.debian.org/stretch/siril testing] and [https://packages.debian.org/sid/siril unstable].
The binary package is available on Debian [https://packages.debian.org/stretch/siril testing] and [https://packages.debian.org/sid/siril unstable].
It should be installed via repositories, in root privileges:
It should be installed via repositories, with superuser privileges:
     apt-get install siril
     apt install siril


==Ubuntu & Linux Mint[[File:Ubuntu_logo.png|48px|frameless|link=|middle]][[File:LMint_logo.png|48px|frameless|link=|middle]]==  
==Ubuntu & Linux Mint[[File:Ubuntu_logo.png|48px|frameless|link=|middle]][[File:LMint_logo.png|48px|frameless|link=|middle]]==
===Official repositories===
===Official repositories===
     sudo apt-get install siril
     sudo apt-get install siril
===PPA repositories===  
===PPA repositories===  
On Ubuntu 16.04 and Linux Mint 18.X, for a newer version that the one provided on official repositories, there is a PPA:
On Ubuntu 16.04 and Linux Mint 18.X, for a newer and less stable version that the one provided on official repositories, there is a PPA:
     sudo add-apt-repository ppa:lock042/siril
     sudo add-apt-repository ppa:lock042/siril
     sudo apt-get update
     sudo apt-get update
     sudo apt-get install siril
     sudo apt-get install siril
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.


=Installation from sources=
==Mac OS X[[File:OSX_logo.png|48px|frameless|link=|middle]]==
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.
 
===Installation via Homebrew (recommended method since 0.9.5)===
 
An official installer for Mac exists, see the download page. This is the way to install siril from source, to test the latest development version for example.
 
*Removing Siril from macport if exists
If Siril was already installed via macport, uninstall it (if not, go directly to next step):
    cd siril
    sudo make uninstall
 
It is also recommended to uninstall macports. To do it, visit this page: https://guide.macports.org/chunked/installing.macports.uninstalling.html
 
*Installation of Homebrew
More details are listed on Homebrew website: https://brew.sh/
 
First, install XCode via the App Store (free software) and install the command line tools by typing in a Terminal window:
    xcode-select --install
 
Then, you can install Homebrew.
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
The script explains what it will do and then pauses before it does it.


The sources are stored on a subversion repository, you can download them with this command the first time:
*Installation of Siril
     svn co https://free-astro.org/svn/siril/branches/0.9/ siril
Copy the following line in the terminal :
    brew install siril
 
*Updates
When a new version of Siril is available, copy this line to the terminal:
    brew upgrade siril
and download the new <code>.app</code> file.
 
Enjoy!!
 
[[File:Siril_on_MacOS_brew.png|600px]]
 
=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 rapidly, so that would be one way to benefit from them. The other way is to use the Ubuntu [#PPA_repositories PPA repository], which is updated with intermediate versions more often.
 
The sources are stored on a git repository, you can download them with this command the first time:
     git clone https://gitlab.com/free-astro/siril.git
    cd siril
    git submodule update --init


And update it the following times by typing <code>svn up</code> in the base directory.
And update it the following times by typing <code>git pull</code> 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:
Below is a list of dependencies. Siril relies on the autotools compilation configuration system and once the source has been downloaded and the prerequisites have been installed, the general way to build it is as such:
     ./autogen.sh
     ./autogen.sh
     make
     make
Line 33: Line 72:


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:
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
     CFLAGS='-mtune=native -O3' ./autogen.sh --prefix=/opt
To launch Siril, the command name is <code>siril</code>.
To launch Siril, the command name is <code>siril</code>.


==Dependencies==
==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:
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:
* [http://www.gtk.org/ gtk+-3.6] (Graphical user interface library)
* [http://www.gtk.org/ gtk+3] (Graphical user interface library), at least version 3.16
* [http://heasarc.nasa.gov/fitsio/fitsio.html cfitsio] (FITS images support)
* [http://heasarc.nasa.gov/fitsio/fitsio.html cfitsio] (FITS images support)
* [http://www.fftw.org/ fftw] (Discrete Fourier Transform library)
* [http://www.fftw.org/ fftw] (Discrete Fourier Transform library)
* [http://www.gnu.org/software/gsl/ gsl-1.*] (The GNU Scientific Library), version 2 is supported starting with release 0.9.1 and SVN revision 1040.
* [http://www.gnu.org/software/gsl/ gsl] (The GNU Scientific Library), version 1 or 2 starting with release 0.9.1 or SVN revision 1040
* [http://www.hyperrealm.com/libconfig/ libconfig]++ (Structured configuration files support)
* [https://hyperrealm.github.io/libconfig/ libconfig] (Structured configuration files support)
* [http://opencv.org/ OpenCV] and a C++ compiler for some image operations
* [https://www.exiv2.org/ Exiv2] to manage image metadata.
 
''Note:'' even if Siril can run in console since version [[Siril:0.9.9|0.9.9]], it is still linked against the graphical libraries, so you still need GTK+ to compile and run it.


Optional dependencies are:
Optional dependencies are:
* [http://www.libraw.org/ libraw], [http://www.libtiff.org/ libtiff], [http://libjpeg.sourceforge.net/ libjpeg], [http://libpng.sourceforge.net/index.html libpng], [http://giflib.sourceforge.net/ giflib] for RAW, TIFF, JPE, PNG and GIF images import and export. The libraries are detected at compilation-time.
* [http://www.libraw.org/ libraw], [http://www.libtiff.org/ libtiff], [http://libjpeg.sourceforge.net/ libjpeg], [http://libpng.sourceforge.net/index.html libpng], [https://github.com/strukturag/libheif libheif] for RAW, TIFF, JPEG, PNG and HEIF images import and export. The libraries are detected at compilation-time.
* [https://github.com/FFMS/ffms2 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.
* [https://github.com/FFMS/ffms2 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 recommended to install the latest version.
* [http://opencv.org/ OpenCV] and a C++ compiler for some image operations.
* [https://www.ffmpeg.org/ ffmpeg] (or libav), providing libavformat, libavutil (>= 55.20), libavcodec, libswscale and libswresample for mp4 sequence export
* [https://curl.haxx.se/libcurl/ libcurl] for new Siril release checking online.
* [http://www.gnuplot.info gnuplot] for photometry graph creation (not required at compilation time)


===Build dependencies===
===Build dependencies===
To install from source, you will have to install the base development packages:
To install from source, you will have to install the base development packages:
     autoconf, automake, libtool, intltool, pkg-tools, make, gcc, g++
     git, autoconf, automake, libtool, intltool, pkg-tools, make, cmake, gcc, g++
You'll probably want <code>subversion</code> too, to download the latest version on the source repository.
The compilers gcc and g++ from this list can be replaced by clang and clang++ (we use them for development), probably others as well.
 
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[[File:Debian_logo.png|48px|frameless|link=|middle]]==
==Installing on Debian[[File:Debian_logo.png|48px|frameless|link=|middle]]==
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.6). 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''.
For a desktop system, the next stable is probably the better choice, called Debian testing, currently version 10 with codename ''Buster''. Otherwise, Siril should still work with Debian 8 ''Jessie'' and 9 ''Stretch''. You may want to build a .deb package instead of using a non-packaged version, in that case see [https://wiki.debian.org/BuildingTutorial this help]. In particular, to install dependencies, you can use the command:
    apt build-dep siril


Otherwise, here is the list of packages for the current version:
* Packages required for the build system:
* Packages required for the build system:
     autoconf automake make gcc libtool intltool pkg-config
     autoconf automake make gcc g++ libtool intltool pkg-config


* List of packages for mandatory dependencies:
* List of packages for mandatory dependencies:
     libfftw3-dev libgsl0-dev libcfitsio3-dev libgtk-3-dev libconfig++-dev
     libfftw3-dev libgsl-dev libcfitsio-dev libgtk-3-dev libconfig-dev libopencv-dev


* List of packages for optional dependencies:
* List of packages for optional dependencies:
     libpng-dev libjpeg-dev libtiff5-dev libraw-dev libgif-dev
     libcurl4-gnutls-dev libpng-dev libjpeg-dev libtiff5-dev libraw-dev libavformat-dev libavutil-dev libavcodec-dev libswscale-dev libswresample-dev  
for film (AVI and others) support: <code>libffms2-dev</code>, and for image resizing, rotation and others: <code>libopencv-dev and g++</code>.
for film input (AVI and others) support: <code>libffms2-dev</code>.


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


==Installing on Ubuntu[[File:Ubuntu_logo.png|48px|frameless|link=|middle]]==
 
'''For debian 10 and siril 1.0''', here's a complete list of packages to install to build from git (adding git, cmake, libexiv2-dev):
    git autoconf automake make gcc g++ libtool intltool pkg-config cmake libfftw3-dev libgsl-dev libcfitsio-dev libgtk-3-dev libconfig-dev libopencv-dev libcurl4-gnutls-dev libpng-dev libjpeg-dev libtiff5-dev libraw-dev libavformat-dev libavutil-dev libavcodec-dev libswscale-dev libswresample-dev libexiv2-dev
 
For the float branch, and soon the master, a submodule must be initialised before calling autogen:
    $ git submodule update --init
 
==Installing on Ubuntu & Linux Mint [[File:Ubuntu_logo.png|48px|frameless|link=|middle]][[File:LMint_logo.png|48px|frameless|link=|middle]]==
A list of dependencies has been reported, for building the executable from source. Use the following command to install all of them:
A list of dependencies has been reported, for building the executable from source. Use the following command to install all of them:
*Ubuntu 14.04
*Ubuntu 14.04 & Linux Mint 17.X
     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
     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 libcurl4-gnutls-dev
'''WARNING''': in Ubuntu 14.04, the version of giflib is too old. You must compile sources, https://sourceforge.net/projects/giflib/, by making:
*Ubuntu 16.04 & Linux Mint 18.X
     ./configure
    sudo apt-get -y install automake autoconf build-essential intltool libgtk-3-dev fftw3-dev libgsl-dev libcfitsio3-dev libconfig++-dev libtiff-dev libjpeg-dev libraw-dev libffms2-dev libopencv-dev libcurl4-gnutls-dev
*Ubuntu 18.04 & Linux Mint 19.X
    sudo apt -y install automake autoconf build-essential intltool libgtk-3-dev libfftw3-dev libgsl-dev libcfitsio-dev libconfig++-dev libtiff-dev libjpeg-dev libraw-dev libffms2-dev libopencv-dev libcurl4-gnutls-dev
 
Then proceed with the normal procedure:
     ./autogen.sh
     make
     make
     sudo make install
     sudo make install
*Ubuntu 16.04
 
     sudo apt-get -y install automake autoconf build-essential intltool libgtk-3-dev fftw3-dev libgsl-dev libcfitsio3-dev libconfig++-dev libtiff-dev libjpeg-dev libraw-dev libffms2-dev libopencv-dev libgif-dev
==Installing on Fedora[[File:Fedora_logo.png|48px|frameless|link=|middle]]==
     dnf install intltool libconfig-devel gtk3-devel fftw3-devel gsl-devel cfitsio-devel LibRaw-devel opencv-devel curl-devel autoconf automake


Then proceed with the normal procedure:
Then proceed with the normal procedure:
     ./autogen.sh
     ./autogen.sh
     make
     make
     sudo make install
and, with superuser privileges
     make install


==Installing on Arch Linux[[File:Arch_logo.png|48px|frameless|link=|middle]]==
==Installing on Arch Linux[[File:Arch_logo.png|48px|frameless|link=|middle]]==
[[User:Vincent|Vincent]] maintains an [https://aur.archlinux.org/packages/siril/ AUR package] for Siril. Download the tarball, run makepkg to build the package and pacman -U to install the package.
[[User:Vincent|Vincent]] maintains a [https://aur.archlinux.org/packages/siril/ release-based AUR package] and a [https://aur.archlinux.org/packages/siril-git/ development version AUR package] for Siril. Download the PKGBUILD or the repository, install dependencies, run makepkg to build the package and pacman -U to install it.
 
    pacman -S base-devel cmake git intltool gtk3 fftw cfitsio gsl libconfig opencv exiv2 libheif libraw


==Installing on FreeBSD 10[[File:FreeBSD_logo.png|48px|frameless|link=|middle]]==
==Installing on FreeBSD 10[[File:FreeBSD_logo.png|48px|frameless|link=|middle]]==
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:
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 intltool libconfig gtk3 fftw3 gsl cfitsio libraw opencv giflib
     pkg install autotools gmake pkgconf libtool intltool gettext libconfig gtk3 fftw3 gsl cfitsio libraw opencv curl


The only package not available as binary is [https://github.com/FFMS/ffms2 ffms2], for film files handling, you will need to compile it from source.
The only package not available as binary is [https://github.com/FFMS/ffms2 ffms2], for film files handling, you will need to compile it from source.


Compilation and the software are working fine with the default clang (<code>cc</code>) 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:
Compilation and the software are working fine with the default clang (<code>cc</code>) compiler. As clang 3.8 appeared in FreeBSD 10 with OpenMP support (clang38 in pkg), Siril can be compiled with it using the following configure command:
     C=clang38 CXX=clang38 LD=clang++38 LDFLAGS='-L/usr/local/llvm38/lib' ./autogen.sh
     C=clang38 CXX=clang++38 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 <code>-lgomp</code> is required to link it:
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 <code>-lgomp</code> is required to link it:
Line 107: Line 168:


==Installing on Mac OS X[[File:OSX_logo.png|48px|frameless|link=|middle]]==
==Installing on Mac OS X[[File:OSX_logo.png|48px|frameless|link=|middle]]==
This is an installation procedure for Siril under Mac OS X 10.11 (El Capitain).
 
===Deprecated method, via macport===


Install XCode via the App Store (free software).
Install XCode via the App Store (free software).
Line 188: Line 250:


[[File:Siril_on_MacOS.png|600px]]
[[File:Siril_on_MacOS.png|600px]]
== Installing on Windows ==
These instructions are made for compiling on Windows with MSYS2. It does not work with FAT filesystems and windows XP, and not very well with 32-bit systems.
[https://www.msys2.org/ Download MSYS2 64bit], a software distribution and building platform for Windows and run the installer - "'''x86_64'''" for 64-bit. When asked, specify the directory where '''MSYS2 64bit''' will be installed.
Don't run MSYS2 from the installer, close it and run MSYS2 64bit (MINGW64BIT) from Start menu or shortcut.
First, update the package database and core system packages by typing (for more info about pacman see [https://wiki.archlinux.org/index.php/pacman this page]):
    pacman -Syu
'''Installing dependencies:'''
    pacman -S --needed base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake
    pacman -S git automake
    pacman -S mingw-w64-x86_64-fftw mingw-w64-x86_64-gsl
    pacman -S mingw-w64-x86_64-cfitsio mingw-w64-x86_64-gtk3
    pacman -S mingw-w64-x86_64-libconfig mingw-w64-x86_64-opencv
    pacman -S mingw-w64-x86_64-libraw mingw-w64-x86_64-ffms2
    pacman -S mingw-w64-x86_64-curl mingw-w64-x86_64-exiv2
'''Building Siril from source:'''
The source code is stored on a gitlab repository, you can download it with this command the first time:
    git clone https://gitlab.com/free-astro/siril.git
    cd siril
    git submodule update --init
In the terminal go to the siril folder:
    cd siril
Generate the build system and compile the code by typing:
    ./autogen.sh
    make all install
'''To launch your build of Siril:'''
Run MSYS2 64bit and type siril's command name:
    siril
You can also create a shortcut to siril.exe to start it, the default location is /mingw64/bin/.
'''To update your version:'''
Run MSYS2 64bit then
    pacman -Syu
    cd siril
    git pull --recurse-submodules
    make all install
If ''git pull'' does not show any change, there is no need to rebuild by running the make command. Otherwise, it will update your build.

Revision as of 12:16, 23 May 2020

Other languages:

We maintain Siril binaries in many operating systems, but in general only for the official releases. If your operating system has no binary version or if you want to customize it, you will have to build it from source.

Installing Siril from binaries

Debian

The binary package is available on Debian testing and unstable. It should be installed via repositories, with superuser privileges:

   apt install siril

Ubuntu & Linux Mint

Official repositories

   sudo apt-get install siril

PPA repositories

On Ubuntu 16.04 and Linux Mint 18.X, for a newer and less stable version that the one provided on official repositories, there is a PPA:

   sudo add-apt-repository ppa:lock042/siril
   sudo apt-get update
   sudo apt-get install siril

Mac OS X

Installation via Homebrew (recommended method since 0.9.5)

An official installer for Mac exists, see the download page. This is the way to install siril from source, to test the latest development version for example.

  • Removing Siril from macport if exists

If Siril was already installed via macport, uninstall it (if not, go directly to next step):

   cd siril
   sudo make uninstall

It is also recommended to uninstall macports. To do it, visit this page: https://guide.macports.org/chunked/installing.macports.uninstalling.html

  • Installation of Homebrew

More details are listed on Homebrew website: https://brew.sh/

First, install XCode via the App Store (free software) and install the command line tools by typing in a Terminal window:

   xcode-select --install

Then, you can install Homebrew.

   /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

The script explains what it will do and then pauses before it does it.

  • Installation of Siril

Copy the following line in the terminal :

   brew install siril
  • Updates

When a new version of Siril is available, copy this line to the terminal:

   brew upgrade siril

and download the new .app file.

Enjoy!!

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 rapidly, so that would be one way to benefit from them. The other way is to use the Ubuntu [#PPA_repositories PPA repository], which is updated with intermediate versions more often.

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

   git clone https://gitlab.com/free-astro/siril.git
   cd siril
   git submodule update --init

And update it the following times by typing git pull 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 prerequisites have been installed, 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 -O3' ./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 (Graphical user interface library), at least version 3.16
  • cfitsio (FITS images support)
  • fftw (Discrete Fourier Transform library)
  • gsl (The GNU Scientific Library), version 1 or 2 starting with release 0.9.1 or SVN revision 1040
  • libconfig (Structured configuration files support)
  • OpenCV and a C++ compiler for some image operations
  • Exiv2 to manage image metadata.

Note: even if Siril can run in console since version 0.9.9, it is still linked against the graphical libraries, so you still need GTK+ to compile and run it.

Optional dependencies are:

  • libraw, libtiff, libjpeg, libpng, libheif for RAW, TIFF, JPEG, PNG and HEIF 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 recommended to install the latest version.
  • ffmpeg (or libav), providing libavformat, libavutil (>= 55.20), libavcodec, libswscale and libswresample for mp4 sequence export
  • libcurl for new Siril release checking online.
  • gnuplot for photometry graph creation (not required at compilation time)

Build dependencies

To install from source, you will have to install the base development packages:

    git, autoconf, automake, libtool, intltool, pkg-tools, make, cmake, gcc, g++

The compilers gcc and g++ from this list can be replaced by clang and clang++ (we use them for development), probably others as well.

Installing on Debian

For a desktop system, the next stable is probably the better choice, called Debian testing, currently version 10 with codename Buster. Otherwise, Siril should still work with Debian 8 Jessie and 9 Stretch. You may want to build a .deb package instead of using a non-packaged version, in that case see this help. In particular, to install dependencies, you can use the command:

   apt build-dep siril

Otherwise, here is the list of packages for the current version:

  • Packages required for the build system:
   autoconf automake make gcc g++ libtool intltool pkg-config
  • List of packages for mandatory dependencies:
   libfftw3-dev libgsl-dev libcfitsio-dev libgtk-3-dev libconfig-dev libopencv-dev
  • List of packages for optional dependencies:
   libcurl4-gnutls-dev libpng-dev libjpeg-dev libtiff5-dev libraw-dev libavformat-dev libavutil-dev libavcodec-dev libswscale-dev libswresample-dev 

for film input (AVI and others) support: libffms2-dev.

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.


For debian 10 and siril 1.0, here's a complete list of packages to install to build from git (adding git, cmake, libexiv2-dev):

   git autoconf automake make gcc g++ libtool intltool pkg-config cmake libfftw3-dev libgsl-dev libcfitsio-dev libgtk-3-dev libconfig-dev libopencv-dev libcurl4-gnutls-dev libpng-dev libjpeg-dev libtiff5-dev libraw-dev libavformat-dev libavutil-dev libavcodec-dev libswscale-dev libswresample-dev libexiv2-dev

For the float branch, and soon the master, a submodule must be initialised before calling autogen:

   $ git submodule update --init

Installing on Ubuntu & Linux Mint

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

  • Ubuntu 14.04 & Linux Mint 17.X
   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 libcurl4-gnutls-dev
  • Ubuntu 16.04 & Linux Mint 18.X
   sudo apt-get -y install automake autoconf build-essential intltool libgtk-3-dev fftw3-dev libgsl-dev libcfitsio3-dev libconfig++-dev libtiff-dev libjpeg-dev libraw-dev libffms2-dev libopencv-dev libcurl4-gnutls-dev
  • Ubuntu 18.04 & Linux Mint 19.X
   sudo apt -y install automake autoconf build-essential intltool libgtk-3-dev libfftw3-dev libgsl-dev libcfitsio-dev libconfig++-dev libtiff-dev libjpeg-dev libraw-dev libffms2-dev libopencv-dev libcurl4-gnutls-dev

Then proceed with the normal procedure:

   ./autogen.sh
   make
   sudo make install

Installing on Fedora

   dnf install intltool libconfig-devel gtk3-devel fftw3-devel gsl-devel cfitsio-devel LibRaw-devel opencv-devel curl-devel autoconf automake

Then proceed with the normal procedure:

   ./autogen.sh
   make

and, with superuser privileges

   make install

Installing on Arch Linux

Vincent maintains a release-based AUR package and a development version AUR package for Siril. Download the PKGBUILD or the repository, install dependencies, run makepkg to build the package and pacman -U to install it.

   pacman -S base-devel cmake git intltool gtk3 fftw cfitsio gsl libconfig opencv exiv2 libheif libraw

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 intltool gettext libconfig gtk3 fftw3 gsl cfitsio libraw opencv curl

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. As clang 3.8 appeared in FreeBSD 10 with OpenMP support (clang38 in pkg), Siril can be compiled with it using the following configure command:

   C=clang38 CXX=clang++38 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

Deprecated method, via macport

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:

   ./autogen.sh
   make

To install Siril, use the usual:

   sudo make install

Launch Siril:

   siril

Enjoy!

Installing on Windows

These instructions are made for compiling on Windows with MSYS2. It does not work with FAT filesystems and windows XP, and not very well with 32-bit systems.

Download MSYS2 64bit, a software distribution and building platform for Windows and run the installer - "x86_64" for 64-bit. When asked, specify the directory where MSYS2 64bit will be installed.

Don't run MSYS2 from the installer, close it and run MSYS2 64bit (MINGW64BIT) from Start menu or shortcut.

First, update the package database and core system packages by typing (for more info about pacman see this page):

   pacman -Syu

Installing dependencies:

   pacman -S --needed base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake
   pacman -S git automake
   pacman -S mingw-w64-x86_64-fftw mingw-w64-x86_64-gsl
   pacman -S mingw-w64-x86_64-cfitsio mingw-w64-x86_64-gtk3
   pacman -S mingw-w64-x86_64-libconfig mingw-w64-x86_64-opencv
   pacman -S mingw-w64-x86_64-libraw mingw-w64-x86_64-ffms2
   pacman -S mingw-w64-x86_64-curl mingw-w64-x86_64-exiv2

Building Siril from source:

The source code is stored on a gitlab repository, you can download it with this command the first time:

   git clone https://gitlab.com/free-astro/siril.git
   cd siril
   git submodule update --init

In the terminal go to the siril folder:

   cd siril

Generate the build system and compile the code by typing:

   ./autogen.sh
   make all install

To launch your build of Siril:

Run MSYS2 64bit and type siril's command name:

   siril

You can also create a shortcut to siril.exe to start it, the default location is /mingw64/bin/.

To update your version:

Run MSYS2 64bit then

   pacman -Syu
   cd siril
   git pull --recurse-submodules
   make all install

If git pull does not show any change, there is no need to rebuild by running the make command. Otherwise, it will update your build.