Linux上でコンパイルする

From Stellarium Wiki
Revision as of 07:57, 5 July 2012 by Didgeweb (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

新しいバージョンのStellariumがリリースされるたびに、Sourceforge上に新しいソースコードのパッケージが提供されます。そのようなソースコードをビルドすれば、同時期にリリースされたバイナリと機能的にまったく同じStellariumのコピーを手に入れることができるでしょう。

Subversionを用いて、「開発用」のソースコードを手に入れることも可能です。そこにはStellariumの最後のリリースのあとに導入された、新しい機能も含まれます。この新機能はしばしば、楽しみなことでもあるでしょう。警告:Subversion版のソースコードは制作中のものであり、不安定だったり、まったく動かなかったり、コンパイルさえできないものかもしれません。

もし、コマンドラインの操作に不慣れなら、このページが参考になるかもしれません。

Contents

準備

最初に、いくつかのパッケージをインストールする必要があります。

現在、automake/autoconfの代わりにCMakeを使用しています。よくある問題としては、CMakeの十分に新しいバージョンを使っていないためにエラーが生じるというものがあります。必要なパッケージ一覧のページを読んで、自分が使用しているバージョンを確認してください(古いCMakeを使っている場合、curl関係のエラーが出ることがあります)。

QTのバージョン4とバージョン3の両方がインストールされている場合、mocやuicのコマンドを使ってQT4を使うようにしてください。Ubuntu/Debianユーザなら、このスクリプトを使えば簡単に切り替えることができます。

ソースコードが含まれる圧縮ファイルを展開します。端末を開き、Stellariumをビルドしたいディレクトリに移動してください。圧縮ファイルをそこに保存し、次のコマンドを実行してください(もし望むなら、arKなどグラフィカルなアーカイブツールを使ってもいいでしょう):

 $ tar zxf stellarium-0.9.0.tar.gz

stellarium-0.9.0というディレクトリができ、その中にソースコードが展開されるはずです。

ビルド

  • 端末を起動し、ソースコードのあるディレクトリに移動してください:
cd stellarium-0.9.0
  • ビルド用のディレクトリを作成し、そこに移動します:
mkdir -p builds/unix
cd builds/unix
  • CMakeを用いて設定をします:
cmake ../..

初期設定では、Stellariumは/usr/localにインストールされます。もし他の場所にインストールしたい場合は、次のようなオプションをcmakeに追加してください。

cmake -DCMAKE_INSTALL_PREFIX=/opt/mylocation ../..
  • makeを実行します
make
  • プログラムをインストールします(rootで実行する必要があります)
make install

これで、Stellariumはビルドされ、インストールされるでしょう。ビルドはP4 1.7Ghz/512 Mbで数分かかります。

Subversion(開発)版

まず、必要なパッケージをインストールしてください。

ソースコードの入手

以下のコマンドを実行してください:

svn co https://stellarium.svn.sourceforge.net/svnroot/stellarium/trunk/stellarium stellarium

これによって、ソースコードを格納するためのstellariumディレクトリが作成されます。

ソースのビルド

  • 上記のsvnコマンドで作成したstellariumディレクトリに移動してください。
cd stellarium
  • ビルド用のディレクトリを作成し、そこに移動します:
mkdir -p builds/unix
cd builds/unix

初期設定では、Stellariumは/usr/local/にインストールされます。もしそれでよければ、次のようにCMakeを実行してください:

cmake ../..

もしくは、別のインストール場所を指定したい場合は、次のようにします:

cmake -DCMAKE_INSTALL_PREFIX=/opt/mylocation/ ../..
  • 次にmakeを実行します
make
  • ソースコードディレクトリからStellariumを実行します。次のようにソースコードディレクトリの一番上に戻って、バイナリファイルを実行してください:
cd ../..
builds/unix/src/stellarium
  • インストールしたい場合はbuilds/unixディレクトリ内で(必要であればrootで)次のコマンドを実行します:
make install

開発版のアップデート

以前に開発版をビルドしていて、新しい変更点を採り入れてビルドしなおしたい場合は、まずstellariumディレクトリ内で次のコマンドを入力してください:

svn up

これは、レポジトリから各ファイルの差分のみを取得し修正してくれます。たいていの場合は、makeからやり直せばいいのですが、新規ファイルが存在する場合(svn upコマンドで先頭に"A"と表示されるファイルが存在する場合)、cmakeからやり直す必要があります。

開発版の問題点

開発版はまさに開発中であることに注意してください。よって簡単にビルドできることもありますし、うまくビルドすることができないこともあります。

  1. バージョン0.9.xでは、dataディレクトリやtextureディレクトリのレイアウトが変更されています。これに関する詳しいことはFile location change for version 0.9.xを読んでください
  2. バージョン0.9.0以降、新しい星のカタログが採用されています。これは全部で六つのファイルからなります。明るい星のみを含んでいる、サイズが小さい三つのファイルはsubversionのレポジトリからダウンロード可能です(小さいと言っても星の数は今までのカタログと同じくらいです)。サイズの大きい残り三つのファイルはsourceforgeから別途ダウンロードすることで利用可能となりますが、まだ用意されていません(準備には時間がかかりそうです)。気になる方のために、4番目と5番目のファイルがここに用意されています。利用するには最低でも512MB以上のメモリが必要です
  3. ビルド後、Stellariumを起動する場合は、別のconfig.iniを利用するようにしてください。次のように実行することで、別のconfig.iniを読み込ませることができます:
stellarium --config-file=dev_config.ini

この場合は~/.stellarium/dev_config.iniが読み込まれます。現在のディレクトリにある設定ファイルを読み込ませたい場合は、次のようにします:

stellarium --config-file=./some_config.ini

QTとSDLを切り替える方法

Stellarium 0.9.0のバイナリでは、以前はSDLを利用していたメインウィンドウの部分でQTを利用するようになりました。ただ、必要ならSDLを利用してビルドすることもまだ可能です。ただし、以下の方法は将来的には廃止されます。

Stellarium 0.9.0に対してSDLバージョンをビルドしたい場合、CMakeLists.txtファイルの以下のセクションの内容を変更します:

########### Others ###########
# Define if we want to manage the main window with SDL or Qt4
# Note that Qt4 is required in any case anyway
SET(USE_QT4 1)
#SET(USE_SDL TRUE)

この部分を、以下のように"SET(USE_QT4 1)"をコメントアウトし、"SET(USE_SDL TRUUE)"の行を有効にします:

########### Others ###########
# Define if we want to manage the main window with SDL or Qt4
# Note that Qt4 is required in any case anyway
#SET(USE_QT4 1)
SET(USE_SDL TRUE)

cmakeコマンドからビルドをすれば、SDLバージョンが完成します。

Personal tools
Namespaces
Variants
Actions
in this wiki
other languages
Toolbox