SSブログ

Debian でArm環境インストール [Linux]

Googleの推奨する、Ubuntu+ct-ngはビルドが通らないのでやめた。
パッケージのインストール方法もよくわからないし。
というわけで、Debian+Emdebianを使ってみる。

デスクトップとして使わない前提でインストール。
あと例によってVirtualPCを使う。

http://www.microsoft.com/japan/windows/virtual-pc/download.aspx

http://www.jp.debian.org/CD/netinst/

ネットワークインストールすればよいので名刺サイズ。
設定で落としてきたISOを仮想ドライブにつっこんで起動。

http://wiki.debian.org/MicrosoftVirtualPc2007/lenny

noreplace-paravirt vga=791
これをつけて起動しないとダメ。
Graphicalインストールにするとvga設定が最初からされているのでnoreplace-paravirtのみでOK

インストール時にAPTサーバを選べるが
ftp.jp.debian.org
を選んでもかなり時間がかかった。
他のサーバを選んでもまったく進まなかったので、じっと我慢。
1時間ぐらいほかの事をしてたほうがよい。
てか、最初にapt-spyするようにしてくれたほうがよくないか?

インストールパッケージはビルド環境が作れればそれでいいので、標準パッケージのみ。
デスクトップはとりあえずいらない。
やっぱり待たされるのでやっぱりほかの事をやったほうが良い。

インストールが終わったらいろいろパッケージをいれたいところだが
何をやるにも待たされるのでまずAPTを調べる

http://www.debian.or.jp/using/mirror.html

apt-get install apt-spy
apt-spy -s jp -d lenny
が、動かなかった・・・イミフ

Arm用クロス環境
UbuntuやめてDebianにしたのは単にEmdebianを使いたかったから。Ubuntuでも使えそうだけど。

http://www.emdebian.org/tools/crosstools.html

#
# -- Emdebian sources.list entries
#
# deb http://www.emdebian.org/debian/ unstable main
# deb http://www.emdebian.org/debian/ testing main
deb http://www.emdebian.org/debian/ lenny main

これを/etc/apt/sources.listに追加して
apt-get update
をやる。

Reading package lists... Done
W: GPG error: http://www.emdebian.org lenny Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY B5B7720097BB3B58

相変わらずこんなことをいわれるが気にしない。本当は気にするべきなんだが・・・

apt-get install libc6-armel-cross libc6-dev-armel-cross binutils-arm-linux-gnueabi gcc-4.3-arm-linux-gnueabi g++-4.3-arm-linux-gnueabi

でOK。あっさり終わる。

http://code.google.com/intl/ja/chromium/
ビルド前の準備
http://code.google.com/p/chromium/wiki/LinuxBuildInstructionsPrerequisites

apt-get install python2.5-dev perl gcc g++ g++-multilib bison flex gperf pkg-config libnss3-dev libasound2-dev libgconf2-dev libglib2.0-dev libgtk2.0-dev libfreetype6-dev libcairo2-dev libdbus-1-dev libbz2-dev libjpeg62-dev libpam0g-dev libexpat1-dev libbz2-dev mesa-common-dev libgl1-mesa-dev libglu1-mesa-dev libxss-dev

http://code.google.com/p/chromium/wiki/LinuxBuildInstructions
http://build.chromium.org/buildbot/archives/chromium_tarball.html
ここからtarballをDLできる。
http://build.chromium.org/buildbot/archives/chromium.r40366.tgz
リダイレクトされていて本体はこっちなのでwget
wget http://build.chromium.org/buildbot/archives/chromium.r40366.tgz
863MBもあるのでしばらく待つ。

tar xzf chromium.r40366.tgz
としてみると、またしても待たされる。
実行が終わるとhomeなるディレクトリしかなかったのであせるが、
深いところにchromium/srcがあったので問題なし。

depot_toolsのインストール
http://dev.chromium.org/developers/how-tos/install-gclient
ソースの取得にはコレを使えとのことらしい。
Tarballがあるが、その部分を読む前にSVNが必要だと勘違いしてしまった
apt-get install subversion
svn co http://src.chromium.org/svn/trunk/tools/depot_tools
でdepot_toolsというフォルダができるので、exportでパスを通しておく。
gclient sync --force
でソースの同期ができるようなことを書いてあるが
前のページにその前にexportしろと書いてある気がするのでそうしてみる

export GYP_GENERATORS=make
gclient sync --force

警告が山盛りでたがエラーじゃないから大丈夫だろう。
でmakeすればよいらしいが、arm版をビルドしたいので設定を行う。
でやっと最初のこのページのことができる。

http://code.google.com/p/chromium/wiki/LinuxChromiumArm
ChromiumOSをビルドするわけじゃないので、rootfsについてはいらないと判断。

exportか、~/.gyp/include.gypにビルド設定をするらしい。
自分は~/.gyp/include.gypを作成した。
そしてまたまたexport ここでクロスコンパイルを指定する。
ここで、emdebianの伝統としてarm-unknown-linux-gnueabiではなくarm-linux-gnueabiであることに注意し、また/usr/binのしたにインストールされるのでexportは以下のようにする

export CROSSTOOL=/usr/bin/arm-linux-gnueabi
export CXX=$CROSSTOOL-g++
export CC=$CROSSTOOL-gcc
export AR=$CROSSTOOL-ar
export AS=$CROSSTOOL-as
export RANLIB=$CROSSTOOL-ranlib


make -r -j6 BUILDTYPE=Release chrome
とするらしい・・・がなぜかia32としてコンパイルしてしまう。
よくよく見ると
export GYP_GENERATORS=make
gclient sync --force
をやる前に設定しておかないといけないようだ。
さっきのgyなんとかgclientの設定だった・・・
再びgclientを行い、makeする。
今度はSSEオプションがないとか言われずに進む。

が、ダメ!
third_party/protobuf2/src/src/google/protobuf/stubs/common.cc:1: error: invalid floating point option: -mfpu=vfpv3
fpuオプションがないとか言われた・・・

今日はここまで。

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。