EFL メモ(EFL memo)

EFL のメモ用、Tizen もあるよ。(Memo for EFL, Sometimes Tizen )

Enlightenment-svn を入れる

はじめに

Enlightenment をインストールするターゲットとして ubuntu 11.04 を前提で記述しています。
同じ手順で ubuntu 11.10 と ubuntu 12.04、そして ubuntu 12.10 へインストールができる確認できていますが、なにか問題が発生した場合はコメント欄などでお知らせくださいね。

libgcrypt.la の修正(for ubuntu 11.04)

ubuntu 11.04 の libgcrypt.la の 'libdir' にあやまりがあるのでアドホックに修正します。

sudo cp /usr/lib/x86_64-linux-gnu/libgcrypt.la /usr/lib/x86_64-linux-gnu/libgcrypt.la.orig
sudo vi /usr/lib/x86_64-linux-gnu/libgcrypt.la ()

(※) libdir='/lib/x86_64-linux-gnu' を libdir='/usr/lib/x86_64-linux-gnu' に変更します。

必須ライブラリインストール

(2012/12/11 依存ライブラリ追加)
EFL + Enlightenment のビルドに必須なライブラリをインストールします。

sudo apt-get install subversion gcc git
sudo apt-get install autoconf automake autopoint libtool make gettext
sudo apt-get install libpam-dev libfreetype6-dev libpng-dev libjpeg-dev zlib1g-dev
sudo apt-get install libdbus-1-dev liblua5.1-dev
sudo apt-get install openssl libssl-dev
sudo apt-get install libx11-dev libxcursor-dev libxrender-dev libxrandr-dev libxfixes-dev
sudo apt-get install libxdamage-dev libxcomposite-dev libxss-dev libxp-dev libxext-dev
sudo apt-get install libxinerama-dev libxkbfile-dev libxtst-dev libxcb1-dev libxcb-shape0-dev libxcb-keysyms1-dev x11proto-print-dev libxp-dev
sudo apt-get install libfribidi-dev libtiff4-dev

推奨ライブラリインストール

EFL + Enlightenment のビルドに推奨されているライブラリをインストールします。

sudo apt-get install libgnutls-dev libtiff4-dev libgif-dev libgif4 libcurl4-gnutls-dev
sudo apt-get install libc-ares-dev libasound2-dev libudev-dev
sudo apt-get install mesa-common-dev libspectre-dev libpoppler-dev librsvg2-dev libvlc-dev
sudo apt-get install libgstreamer-plugins-base0.10-dev

ソースを取得

開発リポジトリからソースコードを取得します。
Subversion か git のどちらでも取得可能です。
ソースコードは 1GB 以上あるので気長に待ちましょう。

Subversion

svn co http://svn.enlightenment.org/svn/e

git

git clone git://git.enlightenment.org/git/e.git

build_e.sh を作成

(2012-12-14 eio を削除)
ビルド用スクリプト build_e.sh を作成します。
以下のスクリプトを build_e.sh というファイル名で保存してください。

#!/bin/sh
set -e
E_ROOT=`pwd`
LANG=C
LC_ALL=C
PREFIX="/usr/local"
PROJECTS="\
efl evas_generic_loaders edje e_dbus edbus efreet eeze e"
OPT="--prefix=$PREFIX"
PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH"
PATH="$PREFIX/bin:$PATH"
LD_LIBRARY_PATH="$PREFIX/lib:$LD_LIBRARY_PATH"
for PROJ in $PROJECTS; do
echo "build $PROJ"
cd $PROJ
make clean distclean || true
./autogen.sh $OPT
make -j2
sudo make install
cd $E_ROOT
sudo ldconfig
done

保存した後に実行権限を与えます。
build_e.sh をチェックアウトしたディレクトリに格納してください。

chmod +x build_e.sh
mv build_e.sh ${e のソースを置いたパス}/e

build_e.sh を実行

e に入って build_e.sh を実行してください。

% cd ${e のソースを置いたパス}/e
% ./build_e.sh

/usr/local 以下に efl(eina, eet, eo, evas, embryo のセット) evas_generic_loaders ecore edje e_dbus efreet eeze e がインストールされます。

セッションファイルを作成

Enlightenment のセッションファイルを記述して、/usr/share/xsessions/EnlightenmentDR17.desktop へ格納してください。

[Desktop Entry]
Name=Enlightenment DR17
Comment=Enlightenment DR17
Exec=/usr/local/bin/enlightenment_start
Terminal=false
TryExec=/usr/local/bin/enlightenment_start
Type=Application

[X-Window Manager]
SessionManaged=true

これでログイン画面でウィンドウマネージャーを Enlightenment DR17 を選べるようになりました。
やったね!

環境変数へ追記

いつも使用するシェルへ設定を追記してください。
デフォルトですと ~/.bashrc です。

export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
export PATH="/usr/local/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"

おわりに

Enlightenment のビルドが終了しましたら次は elementary のビルドにお進みください。
elementary のビルド - EFL メモ