ソースコードからのインストール
最新の機能が欲しい場合、過去のリリースが古くなってきた場合、Sirilの改良に参加したい場合、あるいはすべての依存関係を使用したくない場合は、ソースコードからのインストールが必要です。
ソースコードの入手
ソースコードはgitリポジトリに保存されており、初回はこのコマンドでダウンロードできます:
git clone --recurse-submodules https://gitlab.com/free-astro/siril.git
そして2回目以降はベースのsirilディレクトリで以下のコマンドを実行して更新します:
git pull
git submodule update --recursive
依存関係
Sirilは多くのライブラリに依存しており、そのほとんどはあなたのLinuxディストリビューションまたはパッケージマネージャで利用できるはずです。オペレーティングシステム固有のパッケージの名前は、以下の各セクションに列挙しています。必須の依存関係は以下の通りです:
gtk+3 (グラフィカルユーザーインタフェースライブラリ)、バージョン3.20以降。
adwaita-icon-theme (アイコン) gtkのルックアンドフィールをサポートするため。
cfitsio (FITS画像サポート)。
fftw (離散フーリエ変換ライブラリ)。
gsl (GNU Scientific Library)、リリース0.9.1以降、またはSVNリビジョン1040以降のバージョン1または2。
OpenCV とC++コンパイラ 画像操作のため。
Little CMS オープンソースのカラーマネージメントシステム
wcslib for world coordinate system management, annotations and the photometric color calibration.
gtksourceview4 複数行のテキスト編集のため。GtkSourceView は、構文強調表示、元に戻す/やり直し、ファイルの読み込みと保存、検索と置換、補完機能、印刷、行番号の表示など、ソースコードエディタに一般的な機能をサポートしています。
注釈
バージョン0.9.9からSirilはコンソールで実行できるようになりましたが、まだグラフィカルライブラリに対してリンクされているので、コンパイルして実行するにはGTK+が必要です。
オプションの依存関係は以下の通りです:
openmp マルチスレッド化のため。これは必須ではありませんが、パフォーマンスが大幅に向上するため、強く推奨されます。このオプションのフラグはデフォルトで true に設定されています。つまり、お使いのマシンに openmp がインストールされていない場合は、meson のセットアップ時に
-Dopenmp=falseを追加することが必要です。libraw, libtiff, libXISF, libjpeg, libjxl, libpng, libheif RAW、TIFF、XISF、JPEG、JPEG XL、PNG、および HEIF 画像のインポートとエクスポートのため。これらのライブラリはコンパイル時に検出されます。
libraw、libXISF、libheif RAW、XISF、HEIF、AVIFのインポートのため。ライブラリはコンパイル時に検出されます。
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.
wcslib for world coordinate system management, annotations and the photometric color calibration.
Exiv2 画像のメタデータを管理するため。
libcurl for astrometry and photometry requests.
libgit2 siril-scriptsリポジトリのローカルクローンを維持管理するため。
ビルド時の依存関係
ソースコードからインストールするには、以下の開発用基本パッケージをインストールすることが必要です:
git, autoconf, automake, libtool, intltool, pkg-tools, make, cmake, gcc, g++
このリストにあるコンパイラgccとg++は、clangとclang++で置き換えることができます(私たちは開発用に使っています)。おそらく他のコンパイラも同様です。
The autotools packages (autoconf, automake, probably some others) can be replaced by meson.
一般的なビルドプロセス
Sirilはautotoolsまたはmesonを使ってコンパイルできます。
Meson
推奨される方法はmesonとninjaを使うことです:
meson setup _build --buildtype release
cd _build
ninja
ninja install
依存関係や機能を無効にするには、場合に応じて、-Dfeature=false または -Denable-feature=yes のmesonオプションを使用してください。
以下の表は、設定可能なオプションすべての一覧です。
オプション |
型 |
値 |
選択肢 |
説明 |
|---|---|---|---|---|
relocatable-bundle |
combo |
platform-default |
[ 'yes', 'no', 'platform-default' ] |
build with resources considered bundled under the same prefix |
openmp |
boolean |
true |
N/A |
OpenMPサポート付きでビルド |
exiv2 |
boolean |
true |
N/A |
exiv2サポート付きでビルド |
libgit2 |
boolean |
true |
N/A |
build with libgit2 git integration |
libraw |
boolean |
true |
N/A |
LibRawサポート付きでビルド |
libtiff |
boolean |
true |
N/A |
TIFFサポート付きでビルド |
libjpeg |
boolean |
true |
N/A |
JPEGサポート付きでビルド |
libjxl |
boolean |
true |
N/A |
JPEG XLサポート付きでビルド |
libpng |
boolean |
true |
N/A |
PNGサポート付きでビルド |
libheif |
boolean |
true |
N/A |
HEIFサポート付きでビルド |
libXISF |
boolean |
true |
N/A |
XISFサポート付きでビルド |
ffms2 |
boolean |
true |
N/A |
FFMS2サポート付きでビルド |
ffmpeg |
boolean |
true |
N/A |
FFmpegサポート付きでビルド |
libcurl |
boolean |
true |
N/A |
Use libcurl for web access |
criterion |
boolean |
false |
N/A |
criterionサポート付きでビルド |
flatpak-id |
string |
N/A |
set by flatpak-builder if building a flatpak |
Autotools
autotoolsの方法はunixの世界ではよく知られており、ソースコードをダウンロードして、必要なものをインストールしたら、一般的なビルド方法は以下の通りです:
./autogen.sh
make
make install
最後の行はスーパーユーザー権限が必要かもしれません。
例えば、最適化とインストールをデフォルトの /usr/local ではなく /opt にしたい場合など、特定のオプションをコンパイラに渡したいかもしれません:
CFLAGS='-mtune=native -O3' ./autogen.sh --prefix=/opt
Sirilを起動するには、コマンド名は siril または siril-cli です。
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:
libgtk-3-dev libcfitsio-dev libfftw3-dev libgsl-dev libopencv-dev
liblcms2-dev wcslib-dev libgtksourceview-4-dev
List of packages for optional dependencies:
libcurl4-gnutls-dev libpng-dev libjpeg-dev libtiff5-dev
libraw-dev gnome-icon-theme libavformat-dev libavutil-dev libavcodec-dev
libswscale-dev libswresample-dev libgit2-dev libheif-dev
libexiv2-dev libjxl-dev liblz4-dev libpugixml-dev libxisf-dev
for film input (AVI and others) support:
libffms2-dev
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 gtksourceview4
LittleCMSのバージョン
Siril requires lcms2 >= 2.14 to build. This version is required in order to provide optmisation of the color management code. A sufficient version is available in debian testing and Ubuntu 23.04, however the current Ubuntu LTS release provides an older version, and other OS distributions may do too. If you find yourself in the position of being on an older OS that does not provide lcms2 >= 2.14, you can either manually install packages from a more recent version of your distribution, or you can build and install lcms2 from source code. The lcms2 source is available at their git repository.
構築の失敗
Every commit to Siril git is automatically built in a standard build environment for Linux, Windows and MacOS using the gitlab CI infrastructure. This means that we have high confidence that the master branch, as well as tagged releases, will build successfully given a correctly set up build environment with the necessary dependencies installed.
If you experience a build failure it is likely that this indicates a problem with your build environment or incorrectly installed dependencies - remember many distributions require separate installation of development packages that contain the necessary header files. Check the CI report for the git commit you are trying to build. In the unlikely event that there is a build failure shown, rest assured the team is working to fix it. Otherwise, if the CI pipeline shows green ticks, you will need to review and fix any issues with your own build environment.
If you still believe you have found a build issue that has not been flagged by the CI pipeline - for example if you're building on a different platform such as BSD that the developers don't regularly use - then feel free to raise an issue on gitlab.
Note that issues should only be raised against the master branch or tagged releases. If you are testing new features in merge requests, please provide feedback in comments against the relevant merge request.
システムのPython
If you are building Siril yourself you need to ensure you have a working system Python installation including pip and venv. Note the last point because on some systems (at least Debian / Ubuntu based systems, possibly others) Python is split into many packages and you must ensure the packages that provide pip and venv are installed.