web-dev-qa-db-ja.com

Androidのビルド依存関係をインストールするにはどうすればよいですか?

これらのパッケージを使用してAndroidソースをビルドしようとしています。しかし、私はこのエラーを受け取っています:

$ Sudo apt-get install git-core gnupg flex bison gperf build-essential Zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev
[Sudo] password for asdf: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package libc6-dev-i386
E: Unable to locate package lib32ncurses5-dev
E: Unable to locate package ia32-libs
E: Unable to locate package lib32readline5-dev
E: Unable to locate package lib32z-dev

Libc6-dev-i386 debianパッケージ形式 here をダウンロードしてインストールしようとしました。しかし、.debファイルをダブルクリックすると、Ubuntu Software Managerが間違ったアーキテクチャ「AMD64」と表示します。

(私のOS:32ビットUbuntu 10.10(更新済み)、プロセッサー:AMD phenom II 64ビット。)

2
ruben

Android.comページは少し古くなっていると思います。ネットの周りに浮かんでいる多くの異なる回避策があります。私がうまくいったことを要約しようと思います。

不完全な場合でも役立つ2つのページがここにあります。

crashcourse.ca
wildartist

最初に、 一部のグループスレッド で判断して、Java6ではなくJava5を使用する可能性が高いようです。したがって、手順にJava5が表示されている場合は、Sun Java6で置き換えるか、Java 6を開く必要があることを理解してください。

32ビットシステムに必要なパッケージは次のとおりです。

Sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential Zip curl libncurses5-dev zlib1g-dev openjdk-6-jdk ant gcc-multilib g++-multilib

これらを配置したら、repoをビルドします。

Sudo curl http://Android.git.kernel.org/repo -o /usr/local/bin/repo   
Sudo chmod a+x /usr/local/bin/repo

次に、ビルドディレクトリで:

repo init -u git://Android.git.kernel.org/platform/manifest.git    
repo sync

wildartistサイト は続きます:

「コマンドが見つかりません」というメッセージが表示された場合は、次のコマンドを使用して実行できます。

$ Sudo sh /usr/local/bin/repo init -u git://Android.git.kernel.org/platform/manifest.git
$ Sudo sh /usr/local/bin/repo sync

プロジェクト自体が非常に大きいため、行が高速であっても、コードを取得するのに時間がかかります。長い待ち時間の後、チェックアウトプロセスが終了したことがわかります。次に行うことは、プロジェクトをビルドするMAKEです。ただし、Javaバージョンが正しくなく、ビルドプロセスが失敗するというメッセージが表示されます。次に、build/core/main.mkファイルを変更して、テキスト「1.5」を「1.6」に変更できます。

この時点で、依存関係とコードが面倒を見るはずです。それでもmakeにする必要があります。

コードベースとサポートライブラリおよびコンポーネントが変更されているため、命令を完全に最新の状態に保つことは困難です。そのため、このプロセスには非常に多くの矛盾するハウツーがあります。

3
belacqua

リポジトリで利用できない32ビットパッケージをインストールしようとしています。設定が64ビットであるため、i386パッケージをインストールできません。 Synapticパッケージマネージャーで同様のパッケージを見つけてみてください。たとえば、libc6-devを検索し、システムに適したパッケージをインストールします。

0
Pedram

編集:jgbelacquaの答えを参照してください。 Getlibsは、おそらくコミュニティwikiか何かになるはずです...

getlibs:

getlibs/path/to/binary
getlibs -l i386librarytoinstall.so
getlibs -p i386packagename
getlibs -w www.website.com/i386package.deb
getlibs -i /home/chris/i386package.deb

http://ubuntuforums.org/showthread.php?t=47479

@Pedram:あなたの答えは実際には誤解を招く恐れがあります。

0
bumbling fool