2014年4月12日土曜日

Install Transmission

Transmissionをls-qlにインストールする。
最初に、クロスコンパイル環境でビルド、インストールしてみて、上手くいったらls-ql用に再ビルド(--prefix=/usr/localにしてビルド)してパッケージを作成(checkinstall)、ls-qlにパッケージをコピーしてインストール(dpkg -i)する。

Transmissionのクロスコンパイル

バージョンと

transmission-2.82

クロスコンパイル環境でのインストール先

$sysroot/usr/local

準備(変数の設定)

sysroot=~/ls-ql/worktop/arm-built-from-src/sysroot
PATH=$sysroot/tools/bin:$PATH

前提パッケージ、バージョンとインストール先

libevent2 , libevent-2.0.21-stable , $sysroot/usr
zlib , zlib-1.2.8 , $sysroot/usr
openSSL , openssl-1.0.1e , $sysroot/usr/local
curl , curl-7.32.0 , $sysroot/usr/local

libevent2

$./configure --prefix=$sysroot/usr --host=arm-linux-gnueabi --target=arm-l
inux-gnueabi --build=i686-linux-gnueabi
$make
$make install

zlib

$CC=arm-none-linux-gnueabi-gcc LDSHARED="arm-none-linux-gnueabi-gcc -shared -Wl,-soname,libz.so.1" ./configure --prefix=$sysroot/usr --shared
$make -j4
$make prefix=$sysroot/usr install

openSSL

$./Configure --prefix=/usr/local --openssldir=/usr/local/openssl threads zlib shared no-asm linux-armv4
$make -j4
$make INSTALL_PREFIX=$sysroot install

curl

$./configure --host=arm-none-linux-gnueabi --prefix=$sysroot/usr/local OPENSSL_CFLAGS=-I$sysroot/usr/local/include/ OPENSSL_LIBS="-L$sysroot/usr/local/lib/ -lcrypto"
$make
$make install

transmission

$./configure --prefix=$sysroot/usr/local --host=arm-none-linux-gnueabi OPENSSL_CFLAGS=-I$sysroot/usr/local/include/ OPENSSL_LIBS=-lcrypto LIBCURL_CFLAGS=-I$sysroot/usr/loca/include/ LIBCURL_LIBS="-L$sysroot/usr/local/lib/ -lcurl" LIBEVENT_CFLAGS="-I$sysroot/usr/include/" LIBEVENT_LIBS="-L$sysroot/usr/lib/ -levent" --disable-nls --enable-daemon --enable-cli --enable-lightweight
$make
$make install

パッケージ作成

ls-qlへのインストールのために、checkinstall でパッケージを作成する。
transmissionだけでなく、前提パッケージについても、インストール先を、/usr or /usr/local にして、configure ; make ; checkinstall --install=no にて、パッケージを作成する。
sudo checkinstall --install=no
checkinstall の実行時には、 Architectureを、armに変更する:
このパッケージは以下の内容で構成されます:
0 -  Maintainer: [ root@debian ]
1 -  Summary: [ Package created with checkinstall 1.6.2 ]
2 -  Name:    [ transmission ]
3 -  Version: [ 2.82 ]
4 -  Release: [ 1 ]
5 -  License: [ GPL ]
6 -  Group:   [ checkinstall ]
7 -  Architecture: [ arm ]
8 -  Source location: [ transmission-2.82 ]
9 -  Alternate source location: [  ]
10 - Requires: [  ]
11 - Provides: [ transmission ]
12 - Conflicts: [  ]
13 - Replaces: [  ]
結果の確認は、後日。


以上

0 件のコメント: