admin 管理员组

文章数量: 1184232


2024年3月18日发(作者:visual studio怎么编写c语言)

Android源码编译调试流程

bymengke

1编译流程

sudoapt-getinstallbuild-essential

sudoapt-getinstallmake

sudoapt-getinstallgcc

sudoapt-getinstallg++

sudoapt-getinstalllibc6-dev

sudoapt-getinstallpatch

sudoapt-getinstalltexinfo

sudoapt-getinstalllibncurses-dev

sudoapt-getinstallgit-coregnupg

sudoapt-getinstallflexbisongperflibsdl-devlibesd0-devlibwxgtk2.6-devbuild-essential

zipcurl

sudoapt-getinstallncurses-dev

sudoapt-getinstallzlib1g-dev

sudoapt-getinstallvalgrind

sudoapt-getinstallpython2.5

安装

java

环境

sudoapt-getinstallsun-java6-jresun-java6-pluginsun-java6-fontssun-java6-jdk

sudoapt-getinstallsun-java5-jdk(ubuntu910估计会有一些问题)

(注:官方文档说如果用sun-java6-jdk可出问题,得要用sun-java5-jdk。经测试发现,如

果仅仅

make

make

不包括

makesdk

),用

sun-java6-jdk

是没有问题的。而

makesdk

就会有问题,严格来说是在makedoc出问题,它需要的javadoc版本为1.5。

因此,我们安装完sun-java6-jdk后最好再安装sun-java5-jdk,或者只安装sun-java5-

jdk。这里sun-java6-jdk和sun-java5-jdk都安装,并只修改和javadoc。因

为只有这两个是

makesdk

用到的。这样的话,除了

javadoc

工具是用

1.5

版本,其它均用

1.6版本:

sudoapt-getinstallsun-java5-jdk

cd/etc/alternatives

sudoln-s/usr/lib/jvm/java-1.5.0-sun/man/man1/

sudormjavadoc

sudoln-s/usr/lib/jvm/java-1.5.0-sun/bin/javadocjavadoc

假设源代码的目录为

mydroid

root@mk-desktop:~/mydroid#ls

Makefile

bionic

bootable

build

cts

dalvik

development

device

external

frameworks

hardware

ndk

out

packages

prebuilt

sdk

system

vendor

2make整个环境

执行

make

命令(最好系统不要运行别的程序,这个很耗费资源和时间,我的机器用了

4个小时)

3makesdk

执行

makesdk

mmm指令:编译整个andoid源码

root@mk-desktop:~/mydroid#mmm

mm指令:编译部分andoid源码

root@mk-desktop:~/mydroid/packages/apps/AlarmClock#mm

4eclipse视图介绍

打开eclipse后我们需要用到的是第二三四个

第二个像个小机器人,就是

ddms

视图

第三个右上有个J,这个是最常用的编辑试图

第四个像个小强,这个是调试的时候需要使用的调试试图

调试

5

在模拟器上运行编译好

Android

编译好

Android

之后,

emulator

~/mydroid/out/host/linux-x86/bin

下,

则在~/mydroid/out/target/product/generic下

cd~/mydroid/out/host/linux-x86/bin

增加环境变量

vim~/.bashrc

在.bashrc中新增环境变量,如下

#java程序开发/运行的一些环境变量export

Android_PRODUCT_OUT=~/mydroid/out/target/product/generic

Android_PRODUCT_OUT_BIN=~/mydroid/out/host/linux-x86/bin

exportPATH=${PATH}:${ANDROID_PRODUCT_OUT_BIN}

最后,同步这些变化:

source~/.bashrc

启动emulator

root@mk-desktop:~/mydroid/out/target/product/generic#-

启动

eclipse

eclipse

ddms

视图中选择好进程,

在eclipse的编辑试图Run->DebugConfigurations->Remotejavaapplication上双击,

然后,”Host:”设为localhost,”Port:”设为8700,”ConnectionType”为

Standard(SocketAttach)

然后

“Apply”

6

单步调试例子:

/mydroid_test/packages/apps/Calculator/src/com/android/calculator2/

第155行前右键加断点

然后操作模拟器打开计算器,按下拨号键,此时程序就会停在断点上


本文标签: 调试 需要 编译