2009/02/10 22:09追記
repoコマンドでデフォルトではダウンロードされないソースコードを手動でダウンロードする方法(暫定版)については以下を参照のこと。
Androidのrepoコマンドでデフォルトではダウンロードされないリポジトリをダウンロードする
2008/10/24 20:28追記
本日のAndroidソースコードのサイズは、2.74 GB (2,948,353,766 バイト)。
微妙に増えてます。リビジョンが1.0.6?に上がったようです。
2008/10/24 20:28追記
どうやら無事にダウンロードができたようです!
容量を確認してみたところ、2.74 GB (2,947,281,538 バイト)ですね。
すごいサイズです。
2008/10/24 8:26追記
repo syncを実行してみたところ、ようやく安定して?ダウンロードができるようになったぽいです。スループットは2Mbpsくらい出ているようです。
2008/10/22 18:30追記
あかんですな。WebKitのリポジトリが死んでいる模様・・・。
$ ../bin/repo sync
git.webkit.org[0: 74.86.47.130]: errno=Connection refused
fatal: unable to connect a socket (Connection refused)
error: Cannot fetch platform/external/webkit
2008/10/22追記
どうもrepoコマンド(実体はgit?)がエラーになりますね。
http://source.android.com/known-issues
ここ見ると、問題が続発中・・・w
以下のサイトからWebブラウザでソースコードを参照できるので、しばらくの間はこちらでガマン。
http://android.git.kernel.org/
ひとまずAndroidのソースコードをダウンロードしてきて、ビルドは後回し。
○GitとGnuPGをインストール。
Linux環境でAndroidのソースコードをダウンロードするには、GitとGnuPGが必要。
ということで、Debian lenny化した玄箱Proで、以下を実行。
apt-get install git-core gnupg
○repoをインストール。
repoというのは、Androidが提供しているGitのラッピングするスクリプトらしい。
wget http://android.kernel.org/repo
chmod +x repo
※repoコマンドにはパスを通しておいて下さい。
○gitリポジトリの初期化
mkdir mydroid
cd mydroid
repo init -u git://android.kernel.org/platform/manifest.git
ここで注意!
gitはgitプロトコルを使用するため、httpのproxyしか用意されていない(しかも、トンネリング設定を許していない)環境では、gitが使えない。
そこで、httpのproxy環境下でgitを使用するには、以下を参考にして、
Squidの設定を変更した上で、Corkscrewというhttp proxy経由でSSHをトンネリングするためのツールを使用するらしい。(未確認)
○ダウンロード
先ほど作成したmydroidというフォルダに移動して、repo syncを実行。
repo sync
お~次々とファイルがダウンロードされます。
と思ったら、kernel.orgからファイルを落としてくるんですね。Androidと本家のLinuxってどういう関係があるんでしょうか・・・。
Initializing project platform/dalvik …
remote: Counting objects: 6558, done.
remote: Compressing objects: 100% (35Receiving objects: 1% (66/6558), 160.00 KiB | 310 K
remote: Compressing objects: 100% (3525/3525), done.
remote: Total 6558 (delta 2423), reused 6558 (delta 2423)
Receiving objects: 100% (6558/6558), 6.81 MiB | 232 KiB/s, done.
Resolving deltas: 100% (2423/2423), done.
From git://android.kernel.org/platform/dalvik
* [new branch] master -> korg/master
* [new branch] release-1.0 -> korg/release-1.0
* [new tag] android-1.0 -> android-1.0
と思ったのも束の間。途中でエラーが出てダウンロードが止まります。
Initializing project platform/external/libpcap …
*** Downloading source(s) from a mirror site. ***
*** If the network hangs, kill and restart repo. ***
Getting http://android.kernel.org/pub/libpcap-0.9.8.tar.gz …
error: Cannot import platform/external/libpcap: checksum mismatch: 29b0e71b7913664617f142fdbf22e3a5a0434f4b expected, 7d4227ea78579803a5562f03e4b63790292caac3 imported
error: Cannot fetch platform/external/libpcap
原因はこれらしい。要するに、python2.4ならエラーが起きないけど、python2.5だと起きるらしく、ただいま修正中のもよう!
http://source.android.com/known-issues
“checksum mismatch” during repo sync
Some, but not all, developers are reporting errors like “Cannot import platform/external/iptables: checksum mismatch: 7226fd9f7f7ebada706f9d040b3924
5ee8123faa” when repo sync pulls in the iptables, pcap, and tcpdump tarballs. We’ve identified the problem and should have a fix soon.
This problem manifests itself if python2.5 is your default interpreter. It does not happen with python2.4.
ちなみに、Debian lennyで、apt-get update;apt-get upgradeした直後だと、pythonのバージョンは2.5.2。
python2.4をインストールしてみる。
apt-get install python2.4
これでインストールされるのは2.4.5。/usr/bin/pythonのリンクが/usr/bin/python2.5にはられているので、/usr/bin/python2.4にはり直す。
cd /usr/bin
rm python
ln -s ../python2.4 python
いったんレポジトリのファイルをrmコマンドで手動で削除して、レポジトリの初期化からやり直す。
とりあえず仕掛けたので、寝る!
最近のコメント