LinuxでDalvik仮想マシンだけをコンパイルして実行するために必要な最小限の手順(ソースコードの取得を含む)は何ですか?
7 に答える
実際、私はDalvikにエレメンタリーOSのインストールを任せました。
まず、 https: //source.android.com/source/downloading.htmlを使用してAndroidAOSPソースツリーをダウンロードします。ダウンロードするのを待ちます(現在のコミットとマシュマロブランチのみのクローンを作成する場合は2時間)
build/envsetup.sh
ソースツリーで実行した後、を実行しますlunch full_x86-eng
。次に、入力make -jN
します(Nをコアの数に置き換えます)。
待つ。これには、AMD-4500Mラップトップで約1時間かかりました。新しいコンピュータは30分と1時間ほどの低さで、古いコンピュータは半日かかる場合があります。
ディレクトリをに変更し!!AOSP-PATH!!/out/host/linux-x86/bin/
て実行するexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:!!AOSP-PATH!!/out/host/linux-x86/obj/lib/
か
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:!!AOSP-PATH!!/out/host/linux-x86/lib
またexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:!!AOSP-PATH!!/out/host/linux-x86/lib64
これらすべてを試してください
そして
./dalvikvm --32
。オプションなしで実行しようとすると、--32
クラッシュします(理由はわかりません)
働くマシュマロDalvik。GUIアプリを機能させるには、私が取り組んでいる別のプロジェクトである、もう少し移植とコーディングを行う必要があります。
これを理解するのに半日かかりました。
参考文献
http://milk.com/kodebase/dalvik-docs-mirror/docs/hello-world.html
実際、これはDalvikで実行されているAndroidであり、基盤となるシステムはすでにLinuxです。
デスクトップのLinuxボックスで裸のDalvikVMを実行することは、ソースを取得してコンパイルするだけの問題だと思います。
GUIのものは別のものです。
sabayonLinuxを使用します。これは、AndroidプログラムとすべてのLinuxプログラムをネイティブに実行できるディストリビューションです。
このアイデアを持っているのはあなただけではありません。それはインターネット社会の観点からは素晴らしいことです。
これはおそらくあなたが探しているものです:http ://www.android-x86.org/ 。それらの人はアンドロイドをx86に移植しました。
それでもOSとして動作するので、VirtualBoxを使用せずにLinuxとAndroid(Linux)を一緒に実行できるかどうかはわかりません。
DalvikはAndroid上で動作します。Dalvikの作者は、私たちが知る限り、Androidで実行されることだけを心配しています。
さまざまなグループが、Androidの外部でDalvikを入手することに取り組んでいることを示しています。あなたはおそらく彼らを見つけて話をするのが最善でしょう。
言い換えれば、あなたが求めるタイプの公式の指示はありません。
ごめん!
Android用に設計されたアプリをLinuxで実行するのは難しいでしょう。ただし、LinuxでDalvikVMを実行することは可能です。実際、このGitHubプロジェクトには、Linux用のDalvik VMのコンパイル済みバイナリがあり、すぐに使用できます。バイナリのコンパイル方法と使用方法については、関連するブログ投稿を確認してください。
Java \ C \C++およびその他のフレームワークのプログラミングを学ぶ
Androidソースを変更して(app_processか何かだと思います)、Linuxデスクトップにウィンドウが表示されるようにします(X11 / Wayland APIを学習します)
以下はあなたが始めるための簡単なベースです
www.android-x86.org/getsourcecode
Android-x86ソースコードの取得
まず、このページに従ってビルド環境を構成します。それで
mkdir android-x86
cd android-x86
repo init -u git.android-x86.org/manifest -b $branch
repo sync
ここで、$ branchは、前のセクションで説明したブランチ名です。これにより、android-x86によって作成または変更されたプロジェクトがgitサーバーにポイントされます。他のすべてのプロジェクトはまだAOSPを指しています。また、SourceForge.netにはgitミラーサーバーがあります。これを使用するには、repoinitコマンドを次のように変更するだけです。
repo init -u git.code.sf.net/p/android-x86/manifest -b $branch