您的位置:首页 > 其它

2011-03笔记

2011-04-21 16:59 169 查看
2011-3的笔记:

---------------------------------------------------------------------------------------------------------------------------------

Telichip android:2.2

------------------------------------------------------------------------------------------------------------BUILD_ID--------

BUILD_ID是版本号或者分支

2.1是éclair,2.2是master,0107/2.2是frg83

----------------------------------------------------------------------------------------------------编译android-----------

编译命令顺序:

1. . build/envsetup.sh

2. Lunch

3. cd kernel

4. make tcc92xx_defconfig

5. make menuconfig

6. make

7. cd ../bootable/bootloader/lk

8. make tcc8900_evm

9. cd http://www.cnblogs.com/..
10. make

11. mkmtdimg

注:步骤4只在最初执行一次,步骤5、6只在添加删除driver时执行,步骤7、8、9只在修改了boot时执行,不改boot时,lk也只执行一次。

2.2用jdk1.5编译 1.6没试过

2.3用1.6编译,建议64位系统,32位需要修改文件。

-------------商工

在源码目录下 执行 . /build/envsetup.sh (点后有空格)

多出如下命令:

-croot Changes directory to the top of the tree

-m makes from the top of the tree

-mm builds all of the modules in the current directory

-mmm builds all of the modules in the supplied directory

-cgrep Greps on all local C/C++ files

-jgrep Greps on all local Java files

-resgrep Greps on all local res/*.xml files

-godir go to the directory containing afile

----------------------------------------------------------------------------------------------------编译android模块

用mmm编译指定目录的模块

如编译联系人 mmm packages/apps/contacts/

生成两个文件 out/target/product/generic/data/app/contactTests.apk

out/target/product/generic/data/app/contact.apk

使用命令 make snod 重新生成system.img

不改驱动、不改boot

在froyo目录:

. build/envsetup.sh

lunch

cd kernel

tcc92xx_defconfig

cd .. (返回froyo目录)

make

mkmtdimg

mkmtdimg例:

mkmtdimg --boot out/target/product/tcc8900/boot.img

--system out/target/product/tcc8900/system.img

--recovery out/target/product/tcc8900/recovery.img

--output tcc8900_mtd.img

(在当前目录生成tcc8900_mtd.img)

--------------------------------------------------------------------------------------------------------编译Android SDK

编译SDK文档 froyo110107/development/docs

howto_build_sdk.txt

cd /my_android_git

.build/envsetup.sh

make sdk

位置:

out/host/linux-x86/sdk/

名字:android-sdk_eng.root_linux_x86.zip

如果处理器为多核

make –j4 sdk

解压后:

android sdk中的模拟器emulator程序在android-sdk_eng.root_linux_x86/tools/目录下

运行sdk中的android模拟器需要加载image:

默认加载的是android-sdk_eng.root_linux_x86/tools/lib/images(此image文件夹关联的是/froyo/out/host/linux-x86/sdk/android-sdk_eng.root_linux_x86/platforms/android-2.2.1/images)下的

kernel-gemu ramdisk.img system.img userdata.img

-------------------------------------------------------------------------------------------------android模拟器

不编译生成SDK的话

模拟器在/froyo/out/host/linux-x86/bin目录下

ramdisk.img system.img userdata.img 在

/froyo/out/target/product/generic/目录下

为了使用方便添加些环境变量

export Android_PRODUCT_OUT=/froyo/out/target/product/generic

export Android_PRODUCT_OUT_BIN=/froyo/out/host/linux_x86/bin

export PATH=${PATH}:S{Android_PRODOUCT_OUT_BIN}

source ~/.bashrc

emulator –image system.img –data userdata.img –ramdisk ramdisk.img

--------------------------------------------------------------------------------------------------------------------- 编译android下载的相关库------------

lk.rom 在 bootable/bootloader/lk/build_tcc8900_evm

下载相关库文件

sudo apt-get install git-core gnupg fiex bison gperf build_essential zip curl zlib1g_dev gcc_multilib g++_multilib libc6_dev_i386 lib32ncurses5_dev ia32_libs x11proto_core_dev libx11_dev lib32readine5_dev lib32z_dev

NAND驱动:

bootable/bootloader/tcboot/driver/nand/nand_io_v7.c

nand_io_v7.h在

bootable/bootloader/lk/platform/tcc_shared/include/tnftl

froyo_110107/bootable/bootloader/tcboot/include/tnftl

froyo_110107/hardware/telechips/nand/include/tnftl

Google android官网 developer.android.com(国内屏蔽)

镜像:

androidappdocs.appspot.com

txt.appspot.com/developer.android.com

---------------------------------------------------------------------------------------------------------------------------------

Android ADB工具

Android Debug Bridge

android提供的通用调试工具,可以管理设备或者手机模拟器

安装应用到模拟器

adb install app.apk

卸载

adb shell 进入设备或者模拟器的shell环境

cd data/app

rm app.apk

只执行一条adb shell命令

adb shell dmesg 打印内核的调试信息

---------------------------------------------------------------------------------------------------------------------------------

linux常用命令

----------------------------------------------------------------------------------------------------------减压缩----------

杯具了,想不明白用的那么熟了,过几天没用还是照常忘记,记下。

减压:

tar -xvf /for gz

tar -jxvf /for bz2

查看系统版本

uname –r

---------------------------------------------------------------------------------------------------添加系统源-------------

添加系统源 ubuntu10.10 root权限

可以直接修改/etc/apt/sources.list

命令:

sudo add-apt-repository “deb http://archive.ubuntu.com/ubuntu dapper main multiverse”

sudo add-apt-repository “deb http://archive.ubuntu.com/ubuntu dapper-updates main multiverse”

更新源:

sudo apt-get update

安装JDK5

sudo apt-get install sun-java5-jdk

配置jdk5为默认的JAVA开发环境

sudo update-java-alternatives –s java-1.5.0-sun

哈工大源 run.hit.edu.cn

配置环境变量

mkdir ~/bin

PATH=~/bin:$PATH

--------------------------------------------------------------------------------------------------repo------------------

通过curl下载repo脚本(安装好curl)

curl http://android.git.kernel.org.repo>~/bin/reop

chmod a+x ~/bin/repo

初始化repo

如下载1.5的android源代码cupcake

repo init –u git://android.git.kernel.org//platform/manifest.git –b cupcake

注意:下载文件所在目录为repo init执行时所在目录,即需要下载到那个目录就在那个目录下初始化repo

repo sync(开始下载)(中断后可以用此命令接着上次中断的继续下载)

----------------------------------------------------------------------------------------------操作系统多少位------------

查看ubuntus 是多少位的系统

file /bin/ls

或者

getconf –a|grep LONG_BIT

-----------------------------------------------------------------------------------------------linux环境变量----------

LINUX系统有3个级别的环境变量

/etc/environment是最高级别的

Ubuntu环境变量

/etc/profile 登陆时操作系统使用的第一个文件

/etc/environment 第二个使用的

/etc/bash.bashrc (自己用的)

修改.bashrc 只对当前用户有效

/etc/profile对所有用户有效,加载错误系统无法启动

~/.bash_profile每个用户都可以使用的

使修改立即生效

source

例 source /etc/bash.bashrc

相同名字的环境变量,后写入的先起作用

:(冒汗表示并列)

.(点表示操作的当前目录)

$表示该变量本次定义之前的值

export A=/q/jing

export A=/cd/cdr:$A

就是 A=/cd/cdv:/q/jing

命令env显示所有的环境变量

PATH 决定shell将在哪些目录中寻找命令或程序

HOME 当前用户主目录

SHELL 当前用户使用的是那种shell

HISTSIZE 保存历史命令记录的条数

LOGNAME 当前用户的登录名

PS1 是基本命令提示符,root是#,普通用户是$

ln 常用参数 –s

ln –s 源文件 目标文件

-s 只是在指定位置生成一个文件的镜像,不会占用控件

没有指定-s会在目标位置生成一个和源文件同样大小的文件

无论是软连接还是硬连接,文件都会保持同步变化

当用ls查看文件时,有的文件后面有@符合,就是用ln命令生成的文件。

用ls –l命令查看link的路径

-----------------------------------------------------------------------------------------------修改虚拟机磁盘-----------

增加虚拟机磁盘大小

安装目录 wmware-vdiskmanager

CMD下命令

wmware-vdiskmanager –x 40Gb “J:/vmware space/xxx.wmdk”

xxx为虚拟机名字。

------------------------------------------------------------------------------------------------------Cygwin-----------

Cygwin

Cygwin的根目录“/”就是Cygwin的安装目录

例:/ 是指 D:/Cygwin

管理员目录 ~ 是指windows管理员目录

例 ~ 是/cygwin/c/Document and Setting/Administrator
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: