LS-GL向けにzshをクロスコンパイル

テスト&クロスコンパイルの練習がてら、zshコンパイルしてLS-GLにインストールしてみます。

4. zshのビルド

  • zsh-4.2.6のソースをゲット&ダウンロード
  • ncursesのコンパイルがうまく行かないので、本体の/usr/lib を/usr/local/arm/arm-none-linux-gnueabi/usr2にコピー、強引に共有ライブラリとリンクさせる (追記:後日うまくいく方法を見つけています。id:NeoCat:20071222参照)
 % LDFLAGS=/usr/local/arm/arm-none-linux-gnueabi/usr2/lib/libncurses.so.5 \
    BUILD_CC=/usr/bin/gcc CC=arm-none-linux-gnueabi-gcc \
    CXX=arm-none-linux-gnueabi-g++ LD=arm-none-linux-gnueabi-ld \
    ./configure --host=powerpc-apple-darwin8.10.0 --with-shared \
    --build=arm-none-linux-gnueabi --target=arm-none-linux-gnueabi
 % make prefix=~/Desktop/packages/usr/local
 % cd ~/Desktop/packages/
 % sudo chown root:wheel -R usr
 % tar czf zsh-4.2.6-arm-none-linux-gnueabi.tar.gz usr

5. zshを本体にインストー

作ったアーカイブLS-GLに持って行き、roodでtar xzf *.tar.gz -C /で展開。
これでzshが使えるようになりました♪

ログインシェルの変更は、/etc/passwdファイルを直接書き換えることで行います。
ただし、忘れずに /usr/local/bin/zsh を /etc/shells に追加しておきましょう。いろいろなサービスのログインに支障が出ます。