Updating to match new version of source page |
Updating to match new version of source page |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<languages /> | <languages /> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
<span style="color: #ff0090; font-weight: bold; text-align: center; margin: 2em; font-size: 125%;">This page is now deprecated. Please refer to the new documentation at [https://siril.readthedocs.io/en/stable/Installation.html siril.readthedocs.io].</span> | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
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]]. | 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]]. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
'''This is the installation documentation for Siril 1.2, for Siril 1.0 see [https://free-astro.org/index.php?title=Siril:install&oldid=7944|the older version of the page]''' | |||
</div> | |||
<span id="Installing_Siril_from_binaries"></span> | |||
=Installare Siril dai binari= | =Installare Siril dai binari= | ||
Line 26: | Line 37: | ||
</div> | </div> | ||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
==Mac OS X[[File:OSX_logo.png|48px|frameless|link=|middle]]== | ==Mac OS X[[File:OSX_logo.png|48px|frameless|link=|middle]]== | ||
See [https://siril.org/download/ our download page] for an official build for Mac. | |||
</div> | |||
=== | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
==Flatpak and AppImage== | |||
Siril is also available with the static binary packages [https://flathub.org/apps/details/org.free_astro.siril flatpak] and [https://appimage.github.io/Siril/ AppImage]. You should not use these if Siril is available in your OS like Ubuntu because they take more space on the disk and may not work as well. | |||
</div> | |||
and | |||
<div class="mw-translate-fuzzy"> | <div class="mw-translate-fuzzy"> | ||
=Installazione da sorgente= | =Installazione da sorgente= | ||
L'installazione da sorgente è raccomandata se vuoi le ultime funzionalità, se la precedente release sta diventando vecchia o se vuoi partecipare al miglioramento di Siril. Molti utenti stanno segnalando i ritocchi che vorrebbero, e spesso li implementiamo molto rapidamente. | L'installazione da sorgente è raccomandata se vuoi le ultime funzionalità, se la precedente release sta diventando vecchia o se vuoi partecipare al miglioramento di Siril. Molti utenti stanno segnalando i ritocchi che vorrebbero, e spesso li implementiamo molto rapidamente. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
==Getting the sources== | |||
</div> | </div> | ||
Line 76: | Line 65: | ||
</div> | </div> | ||
<div | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
==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] (Graphical user interface library), at least version 3. | * [http://www.gtk.org/ gtk+3] (Graphical user interface library), at least version 3.20 | ||
* [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] (The GNU Scientific Library), version 1 or 2 starting with release 0.9.1 or 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://opencv.org/ OpenCV] and a C++ compiler for some image operations | * [http://opencv.org/ OpenCV] and a C++ compiler for some image operations | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
''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. | ''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. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Optional dependencies are: | Optional dependencies are: | ||
* [https://curl.haxx.se/libcurl/ libcurl] OR [https://gitlab.gnome.org/GNOME/glib-networking glib-networking] with its HTTP backend for online operations like update checks, astrometry and photometry requests. | |||
* [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. | * [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 recommended to install the latest 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. | ||
* [https://www.ffmpeg.org/ ffmpeg] (or libav), providing libavformat, libavutil (>= 55.20), libavcodec, libswscale and libswresample for mp4 sequence export | * [https://www.ffmpeg.org/ ffmpeg] (or libav), providing libavformat, libavutil (>= 55.20), libavcodec, libswscale and libswresample for mp4 sequence export | ||
* [http://www.gnuplot.info gnuplot] for photometry graph creation (not required at compilation time) | * [http://www.gnuplot.info gnuplot] for photometry graph creation (not required at compilation time) | ||
* [https://www.gnu.org/software/gnuastro/manual/html_node/WCSLIB.html wcslib] for world coordinate system management, annotations and the photometric color calibration | |||
* [https://hyperrealm.github.io/libconfig/ libconfig] (Structured configuration files support), used to read the configuration file from versions up to 1.0, only used to get old settings now | |||
* [https://gitlab.gnome.org/GNOME/json-glib libjson-glib] for update checking (useless if you build an non-released version). | |||
* [https://www.exiv2.org/ Exiv2] to manage image metadata. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
===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: | ||
git, autoconf, automake, libtool, intltool, pkg-tools, make, cmake, gcc, g++ | 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. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
The autotools packages (autoconf, automake, probably some others) can be replaced by meson. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
==Generic build process== | |||
Siril can be compiled either using autotools or meson. | |||
===Meson=== | |||
The newer (since version [[siril:0.99.4|0.99.4]]) way is to use meson and ninja: | |||
meson --buildtype release _build | |||
cd _build | |||
ninja | |||
ninja install | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
To disable some dependencies or features, use meson options -D''feature''=false or -Ddisable-''feature''=yes depending on the case. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
===Autotools=== | |||
The autotools ways is well known in the unix world, 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. | |||
</div> | |||
<div class="mw-translate-fuzzy"> | |||
Potresti voler passare opzioni specifiche al compilatore, per esempio che tu vuoi l'ottimizzazione e l'installazione in /opt invece del default /usr/local: | |||
CFLAGS='-mtune=native -O2' ./autogen.sh --prefix=/opt | |||
Per lanciare Siril, il nome del comando è <code>siril</code>. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
To launch Siril, the command name is <code>siril</code> or <code>siril-cli</code>. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
==Installing on Debian[[File:Debian_logo.png|48px|frameless|link=|middle]]== | ==Installing on Debian[[File:Debian_logo.png|48px|frameless|link=|middle]]== | ||
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 | apt build-dep siril | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Otherwise, here is the list of packages for the current version: | 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 g++ libtool intltool pkg-config | autoconf automake make gcc g++ libtool intltool pkg-config cmake | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
* List of packages for mandatory dependencies: | * List of packages for mandatory dependencies: | ||
libfftw3-dev libgsl-dev libcfitsio-dev libgtk-3-dev | libfftw3-dev libgsl-dev libcfitsio-dev libgtk-3-dev libopencv-dev libexiv2-dev | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
* List of packages for optional dependencies: | * 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 | wcslib-dev libcurl4-gnutls-dev libpng-dev libjpeg-dev libtiff5-dev libraw-dev gnome-icon-theme libavformat-dev libavutil-dev libavcodec-dev libswscale-dev libswresample-dev | ||
for film input (AVI and others) support: <code>libffms2-dev</code>. | for film input (AVI and others) support: <code>libffms2-dev</code>. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
==Installing on Arch Linux[[File:Arch_logo.png|48px|frameless|link=|middle]]== | |||
Two packages are available on AUR: [https://aur.archlinux.org/packages/siril/ siril] and [https://aur.archlinux.org/packages/siril-git/ siril-git]. Download the PKGBUILD or the repository, install dependencies, run makepkg to build the package and pacman -U to install it. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Dependencies (mandatory and a few optional): | |||
pacman -S base-devel cmake git intltool gtk3 fftw cfitsio gsl opencv exiv2 libraw wcslib | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
==Installing on FreeBSD 10[[File:FreeBSD_logo.png|48px|frameless|link=|middle]]== | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
'''(Not updated in a while)''' | |||
</div> | |||
== | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
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: | ||
</div> | |||
pkg install autotools gmake pkgconf libtool intltool gettext | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
pkg install autotools gmake pkgconf libtool intltool gettext gtk3 fftw3 gsl cfitsio libraw opencv curl | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
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. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
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: | 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=clang++38 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 | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
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: | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
CC=gcc5 LDFLAGS="-Wl,-rpath=/usr/local/lib/gcc5 -L/usr/local/lib/gcc5 -lgomp" ./autogen.sh | CC=gcc5 LDFLAGS="-Wl,-rpath=/usr/local/lib/gcc5 -L/usr/local/lib/gcc5 -lgomp" ./autogen.sh | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
[[File:Siril_on_FreeBSD.png|600px]] | [[File:Siril_on_FreeBSD.png|600px]] | ||
</div> | |||
== | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
== Building on Windows with msys2 == | |||
</div> | |||
=== | <div lang="en" dir="ltr" class="mw-content-ltr"> | ||
These instructions are made for compiling on Windows with MSYS2 distribution using MinGW. MSYS2 requires 64 bit Windows 7 or newer, and does not work with FAT filesystems. | |||
</div> | |||
These instructions are made for compiling on Windows with MSYS2. | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
[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. | [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. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Run MSYS2 directly from the installer or later "MSYS2 MinGW 64 bit" from Start menu or shortcut. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
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]): | 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]): | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
pacman -Syu | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
'''Installing dependencies:''' | '''Installing dependencies:''' | ||
Note: automake is the legacy (stable) build method, now being replaced by meson (experimental) build system. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
pacman -S --needed base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake git automake mingw-w64-x86_64-meson mingw-w64-x86_64-ninja mingw-w64-x86_64-gtk3 mingw-w64-x86_64-cfitsio mingw-w64-x86_64-fftw mingw-w64-x86_64-gsl mingw-w64-x86_64-opencv mingw-w64-x86_64-exiv2 mingw-w64-x86_64-curl | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Warning: meson will need a restart of MSYS2 to be usable. | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Also install some optional dependencies (recommended): | |||
pacman -S mingw-w64-x86_64-libraw mingw-w64-x86_64-libheif mingw-w64-x86_64-ffms2 | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
'''Building Siril from source:''' | '''Building Siril from source:''' | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
The source code is stored on a gitlab repository, you can download it with this command the first time: | 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 | git clone https://gitlab.com/free-astro/siril.git | ||
cd siril | |||
git submodule update --init | git submodule update --init | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
'''Now, meson and ninja are the official way to build siril on Windows''': Generate the build system and compile the code by typing: | |||
Generate the build system and compile the code by typing: | meson _build | ||
ninja -C _build install | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
'''To launch your build of Siril:''' | '''To launch your build of Siril:''' | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Run MSYS2 64bit and type siril's command name: | Run MSYS2 64bit and type siril's command name: | ||
siril | siril | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
You can also create a shortcut to siril.exe to start it, the default location is /mingw64/bin/. | You can also create a shortcut to siril.exe to start it, the default location is /mingw64/bin/. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
'''To update your version:''' | '''To update your version:''' | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
Run MSYS2 64bit then | Run MSYS2 64bit then | ||
pacman -Syu | pacman -Syu | ||
cd siril | cd siril | ||
git pull --recurse- | git pull --recurse-submodules | ||
meson _build | |||
ninja -C _build install | |||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
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. | 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. | ||
</div> | |||
<div lang="en" dir="ltr" class="mw-content-ltr"> | |||
After that just launch the build by typing ''siril'' | |||
</div> |
Latest revision as of 22:47, 16 September 2023
This page is now deprecated. Please refer to the new documentation at siril.readthedocs.io.
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.
This is the installation documentation for Siril 1.2, for Siril 1.0 see older version of the page
Installare Siril dai binari
Siril è attualmente disponibile come binario solo per i pacchetti come 0.9.4.
Debian
Il pacchetto binario è disponibile su Debian testing e instabile. Dovrebbe essere installato utilizzando i repository, con privilegi di root:
apt-get install siril
Ubuntu & Linux Mint
Repository ufficiali
sudo apt-get install siril
Repository PPA
Su Ubuntu 16.04 e Linux Mint 18.X, per una nuova versione che è stata fornita sui repository ufficiali, c'è un PPA:
sudo add-apt-repository ppa:lock042/siril sudo apt-get update sudo apt-get install siril
Per altri sistemi operativi si prega di utilizzare il codice sorgente come descritto qui sotto. Windows è completamente non supportato. Se puoi, considera di creare un processo di installazione o un pacchetto per il tuo sistema operativo.
Mac OS X
See our download page for an official build for Mac.
Flatpak and AppImage
Siril is also available with the static binary packages flatpak and AppImage. You should not use these if Siril is available in your OS like Ubuntu because they take more space on the disk and may not work as well.
Installazione da sorgente
L'installazione da sorgente è raccomandata se vuoi le ultime funzionalità, se la precedente release sta diventando vecchia o se vuoi partecipare al miglioramento di Siril. Molti utenti stanno segnalando i ritocchi che vorrebbero, e spesso li implementiamo molto rapidamente.
Getting the sources
I sorgenti sono memorizzati in un repository subversion, puoi scaricarli per la prima volta utilizzando questo comando:
svn co https://free-astro.org/svn/siril/branches/0.9/ siril
E aggiornarli le volte successive digitando svn up
nella directory radice.
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:
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:
- libcurl OR glib-networking with its HTTP backend for online operations like update checks, astrometry and photometry requests.
- 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
- gnuplot for photometry graph creation (not required at compilation time)
- wcslib for world coordinate system management, annotations and the photometric color calibration
- libconfig (Structured configuration files support), used to read the configuration file from versions up to 1.0, only used to get old settings now
- libjson-glib for update checking (useless if you build an non-released version).
- Exiv2 to manage image metadata.
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.
The autotools packages (autoconf, automake, probably some others) can be replaced by meson.
Generic build process
Siril can be compiled either using autotools or meson.
Meson
The newer (since version 0.99.4) way is to use meson and ninja:
meson --buildtype release _build cd _build ninja ninja install
To disable some dependencies or features, use meson options -Dfeature=false or -Ddisable-feature=yes depending on the case.
Autotools
The autotools ways is well known in the unix world, 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.
Potresti voler passare opzioni specifiche al compilatore, per esempio che tu vuoi l'ottimizzazione e l'installazione in /opt invece del default /usr/local:
CFLAGS='-mtune=native -O2' ./autogen.sh --prefix=/opt
Per lanciare Siril, il nome del comando è siril
.
To launch Siril, the command name is siril
or siril-cli
.
Installing on Debian
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 cmake
- List of packages for mandatory dependencies:
libfftw3-dev libgsl-dev libcfitsio-dev libgtk-3-dev libopencv-dev libexiv2-dev
- List of packages for optional dependencies:
wcslib-dev libcurl4-gnutls-dev libpng-dev libjpeg-dev libtiff5-dev libraw-dev gnome-icon-theme libavformat-dev libavutil-dev libavcodec-dev libswscale-dev libswresample-dev
for film input (AVI and others) support: libffms2-dev
.
Installing on Arch Linux
Two packages are available on AUR: siril and siril-git. Download the PKGBUILD or the repository, install dependencies, run makepkg to build the package and pacman -U to install it.
Dependencies (mandatory and a few optional):
pacman -S base-devel cmake git intltool gtk3 fftw cfitsio gsl opencv exiv2 libraw wcslib
Installing on FreeBSD 10
(Not updated in a while)
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 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
Building on Windows with msys2
These instructions are made for compiling on Windows with MSYS2 distribution using MinGW. MSYS2 requires 64 bit Windows 7 or newer, and does not work with FAT filesystems.
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.
Run MSYS2 directly from the installer or later "MSYS2 MinGW 64 bit" 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: Note: automake is the legacy (stable) build method, now being replaced by meson (experimental) build system.
pacman -S --needed base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake git automake mingw-w64-x86_64-meson mingw-w64-x86_64-ninja mingw-w64-x86_64-gtk3 mingw-w64-x86_64-cfitsio mingw-w64-x86_64-fftw mingw-w64-x86_64-gsl mingw-w64-x86_64-opencv mingw-w64-x86_64-exiv2 mingw-w64-x86_64-curl
Warning: meson will need a restart of MSYS2 to be usable.
Also install some optional dependencies (recommended):
pacman -S mingw-w64-x86_64-libraw mingw-w64-x86_64-libheif mingw-w64-x86_64-ffms2
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
Now, meson and ninja are the official way to build siril on Windows: Generate the build system and compile the code by typing:
meson _build ninja -C _build 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 meson _build ninja -C _build 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.
After that just launch the build by typing siril