关闭

关闭

关闭

封号提示

内容

首页 A31s_android开发环境使用手册V1.1 20130123.pdf

A31s_android开发环境使用手册V1.1 20130123.pdf

A31s_android开发环境使用手册V1.1 201301…

上传者: csy10841054 2013-06-25 评分 0 0 0 0 0 0 暂无简介 简介 举报

简介:本文档为《A31s_android开发环境使用手册V1.1 20130123pdf》,可适用于IT/计算机领域,主题内容包含ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechno符等。

ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedAsAsAsAsAndroidAndroidAndroidAndroid开发环境搭建手册VConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedRevisionRevisionRevisionRevisionHistoryHistoryHistoryHistoryVersionVersionVersionVersionDateDateDateDateSectionSectionSectionSectionPagePagePagePageChangesChangesChangesChangesVInitialversionConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved目录概述开发环境准备硬件资源软件资源下载代码安装repo引导脚本从全志服务器电信网络下载安装repo引导脚本从全志服务器联通网络下载安装repo引导脚本下载仓库从全志服务器使用电信网络下载仓库从全志服务器使用联通网络下载仓库源码树结构编译代码编译内核编译android固件打包升级打包固件升级调试手段debug固件生成局部升级方法fastboot使用局部打包调试demo调试apk调试linux内核调试android内核ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved概述本文档用于介绍As环境的搭建以及固件编译打包调试。源码可以从全志科技的GIT服务器下载。ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved开发环境准备硬件资源()AsEVB开发板()台PC:台PC(安装Linux)做编译服务器另外台PC(安装WindowsXP)用于烧写固件()串口线V电源和小口USB线图串口线USB线软件资源()编译服务器台对于编译服务器的选择最好是选择Ubuntu(bit)也可以Ubuntu(bit)但是并不推荐使用bit的。需要有以下配置:all:sudoaptgetinstallsunjavajdkubuntu:sudoaptgetinstallgitcoregnupgflexbisongperfbuildessentialzipcurlzlibgdevgccmultilibgmultiliblibcdevilibncursesdevialibsxprotocoredevlibxdevlibreadlinedevlibzdevubuntu:sudoaptgetinstallgitcoregnupgflexbisongperflibsdldevlibesddevlibwxgtkdevbuildessentialzipcurllibncursesdevzlibgdevvalgrind()编译工具我们使用的交叉编译工具为armlinuxgnueabigcc(已经放在SDK包的toolstoolschain目录下)ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved()烧写工具我们使用windows系统安装phoenixsuit烧录工具进行固件的烧写。()其它建议在windows系统下安装putty,并且网络映射到上述Linux编译服务器进行SDK源码的编译。ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved下载代码安装reporeporeporepo引导脚本安装repo引导脚本:请客户使用AW提供的引导脚本和repo仓库如已安装了google官方引导脚本请将官方引导脚本替换成AW提供的引导脚本。从全志服务器电信网络下载安装reporeporeporepo引导脚本从电信服务器上下载安装repo引导脚本:username替换成客户下载账号的用户名$gitclonessh:usernameusernameusernameusernamegitreporepogit修改reporepo文件中下面一行将username替换成客户下载账号的用户名REPOURL='ssh:usernameusernameusernameusernamegitreporepogit'把repo引导脚本添加到自己计算机环境变量中$cpreporepousrbinrepo$chmodusrbinrepo从全志服务器联通网络下载安装reporeporeporepo引导脚本从联通服务器上下载安装repo引导脚本:username替换成客户下载账号的用户名$gitclonessh:usernameusernameusernameusernamegitreporepogit修改reporepo文件中下面一行将username替换成客户下载账号的用户名REPOURL='ssh:usernameusernameusernameusernamegitreporepogit'把repo引导脚本添加到自己电脑环境变量中$cpreporepousrbinrepo$chmodusrbinrepo下载仓库请客户根据自己所属的网络来选择对应的IP地址否则不同运营商之间下载速度会非常慢。请在本公司网络状况良好的时候下载。ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved从全志服务器使用电信网络下载仓库电信网络使用IP地址:、下载android仓库:username替换成客户帐号的用户名$mkdirandroid$cdandroid$repoinitussh:usernameusernameusernameusernamegitrepoAsmanifestgit$reposync$repostartjbasall#全部下载完成之后创建分支、下载lichee部分(linuxkernel)代码:username替换成客户帐号的用户名注意:客户不要在android目录下面去创建lichee目录否则初始化时不会生成新的repo文件而是用上一级的repo文件。最好在android的同一级目录创建lichee目录。$cd$mkdirlichee$cdlichee$repoinitussh:usernameusernameusernameusernamegitrepoAsmanifestgitmlicheexml$reposync$repostartjbasall#全部下载完成之后创建分支后续发布新版本用户更新代码只需在原来的目录下执行reposync命令即可。从全志服务器使用联通网络下载仓库联通网络使用IP地址:、下载android仓库::username替换成客户帐号的用户名$mkdirandroid$cdandroid$repoinitussh:usernameusernameusernameusernamegitrepoAsmanifestgit$reposync$repostartjbasall#全部下载完成之后创建分支、下载lichee部分(linuxkernel)代码:username替换成客户帐号的用户名注意:客户不要在android目录下去创建lichee目录否则初始化时不会生成新的repo文件而是受上一级的repo文件控制。最好在android的同一级目录创建lichee目录。$cd$mkdirlichee$cdlichee$repoinitussh:usernameusernameusernameusernamegitrepoAsmanifestgitmlicheexmlConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved$reposync$repostartjbasall#全部下载完成之后创建分支源码树结构下载完android部分和Lichee部分的代码查看源码树结构如下所示。treeLandroidabibionicbootablebuildctsdalvikdevelopmentdeviceexternalframeworksgdkhardwarelibcorelibnativehelperMakefilendkpackagespdkprebuiltprebuiltssdksystemlicheebootbuildrootbuildshlinuxREADMEtoolsubootConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved编译代码编译内核在lichee目录下面执行以下语句buildshpsunifiber当屏幕上出现################################compilesuccess################################表明编译成功完成假如编译停止时未看见这个编译成功的提示表明编译失败。注意:编译帮助指令在不知道自己该输入什么指令编译固件时可以在lichee目录下键入buildshh来获取帮助。编译AndroidAndroidAndroidAndroid在android目录下执行以下语句选择android产品sourcebuildenvsetupshlunch屏幕上会出现以下输出:Lunchmenupickacombo:fullengfullxengvboxxengfullgrouperuserdebugminiarmvaneonuserdebugminiarmvauserdebugfullwingrayuserdebugfullcrespouserdebugfullmagurouserdebugfibergengfiberevbengfiberaspengfiberastengfullpandauserdebugWhichwouldyoulikefulleng选择跟自己开发板对应的产品拷贝内核和模块到android中devicesoftwinnerfiberxxxConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedextractbsp编译androidmakej在outtargetproductfiberxxx目录下面会生成bootimg,recoveryimg,systemimg个包。ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved固件打包升级打包直接在android目录下输入命令pack即可。pack打包成功屏幕上会出现以下打印homehuangxinworkspaceaexdroidlicheetoolspackoutBeginParsesyspartionfexAddpartionbootloaderfexBOOTLOADERFEXAddpartionverybootloaderfexBOOTLOADERFEXFilePath:bootloaderfexFileLength=becFileSizeHigh=AddpartionenvfexENVFEXAddpartionveryenvfexENVFEXFilePath:envfexFileLength=FileSizeHigh=AddpartionbootfexBOOTFEXAddpartionverybootfexBOOTFEXFilePath:bootfexFileLength=dFileSizeHigh=AddpartionsystemfexSYSTEMFEXAddpartionverysystemfexSYSTEMFEXFilePath:systemfexFileLength=fdcFileSizeHigh=AddpartionrecoveryfexRECOVERYFEXAddpartionveryrecoveryfexRECOVERYFEXFilePath:recoveryfexFileLength=aFileSizeHigh=AddpartiondiskfsfexDISKFSFEXBuildImgDragonexecuteimagecfgSUCCESS!imageisathomehuangxinworkspaceaexdroidlicheetoolspacksuniandroidfiberevbimg固件升级将打包生产的固件包烧录到小机中将用到windows下的PhoenixSuit软件如下ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved图所示:选择好固件在小机关机状态下先按住home键然后接入USB线再按power键五次以上在windows下弹出的升级界面选择即可升级。如果开启了usb调试也可以启动到android界面下直接点击立即升级即可。ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved调试手段生成debugdebugdebugdebug固件为了调试需要生成一个调试固件即可。在android目录packd生成一个debug固件即可。局部升级方法如果我们只对android系统某个文件修改而不想再次编译整个android系统去打包烧录升级这样是比较耗时的更快捷的方法是局部编译然后将生成的结果推送到小机。如果修改内核中某个文件则需要编译内核然后在到android下面生产bootimg,再用fastboot工具刷到小机。在会有相应的例子说明。fastbootfastbootfastbootfastboot使用进入fastboot模式)启动开发板在串口界面敲任意按键可以进入uboot如果进不了fastboot将Z:workspaceaexdroidlicheetoolspackchipssuniconfigsandroiddefaultenvcfg中的bootdelay=改成bootdelay=重新打包固件即可。)在串口命令行输入fastboot命令进入fastboot模式)通过pc端的fastboot工具烧录各个固件包(fastboot是windows下的一个工具上网自己下载一个解压到本地然后将fastbootexe添加到windows环境变量)进入在windows命令行:cmd进行命令行模式于是可以在命令行执行fastboot指令)退出fastboot模式:ctlcfastboot命令使用在windows命令行使用fastboot命令。擦除分区:$fastbooterase{partition}例如$fastbooteraseboot擦除boot分区$fastbooterasesystem擦除system分区$fastbooterasedata擦除data分区烧写指定分区:$fastbootflash{partition}{*img},例如$fastbootflashbootbootimg往flashboot分区烧录bootimg$fastbootflashsystemsystemimg往flashsystem分区烧录systemimg$fastbootflashdatauserdataimgConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved局部打包$makebootimage在android目录下执行打包生成bootimgbootimg包含linuxkernel和内存盘ramdisk如果内核有修改得先编译内核然后在android目录下先执行“extractbsp”再实行以上命令便可以打包生产bootimg$makesystemimagenodeps在android目录下执行打包在outtargetproductfiberevb目录下生成androidsystemimg。调试demodemodemodemo调试APKAPKAPKAPK修改应用程序Gallery编译修改推送到小机$sourcebuildenvsetupsh$lunch选fiberevb产品$cdpackagesappsGallery$mm执行“mm”命令局部编译Gallery应用程序生成Galleryapk。如下所示。Install:outtargetproductfiberevbsystemappGalleryapk然后在windos命令行下将生成的Galleryapk推送到小机的相应目录systemapp下即可(注:需要预先安装adb)。如下所示:在windows命令行:cmd进入命令行模式。$adbpushGalleryapksystemapp调试LinuxLinuxLinuxLinux内核在更改了内核相关文件后在lichee目录下执行以下命令编译内核$buildshpsunifiber在android目录下执行以下命令打包生成bootimg$sourcebuildenvsetupsh$lunch选fiberevb产品$extractbsp$makebootimage生成了bootimg之后需要通过fastboot工具刷到小机:重新启动开发板在串口界面敲任意按键可以进入uboot在串口命令行输入fastboot命令进入fastboot模式进入windows命令行:cmd进行命令行模式在命令行执行fastboot(前提是已经安ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved装了fastboot工具)将bootimg拷贝到小机上即可。$fastbooteraseboot擦除boot分区$fastbootflashbootbootimg往flashboot分区烧录bootimg调试AndroidAndroidAndroidAndroid内核在android目录下执行以下指令在outtargetproductfiberevb目录下生成androidsystemimg。$sourcebuildenvsetupsh$lunch选fiberevb产品$makesystemimagenodeps通过fastboot工具刷到小机:重新启动开发板在串口界面敲任意按键可以进入uboot在串口命令行输入fastboot命令进入fastboot模式进入在windows命令行:cmd进行命令行模式在命令行执行fastboot指令(前提是已经安装了fastboot工具)将systemimg拷贝到小机上即可。$fastbooterasesystem擦除system分区$fastbootflashsystemsystemimg往flashsystem分区烧录systemimg概述开发环境准备硬件资源软件资源下载代码安装repo引导脚本从全志服务器电信网络下载安装repo引导脚本从全志服务器联通网络下载安装repo引导脚本下载仓库从全志服务器使用电信网络下载仓库从全志服务器使用联通网络下载仓库源码树结构编译代码编译内核编译Android固件打包升级打包固件升级调试手段生成debug固件局部升级方法fastboot使用局部打包调试demo调试APK调试Linux内核调试Android内核

用户评论(0)

0/200

精彩专题

上传我的资料

每篇奖励 +2积分

资料评价:

/16
2下载券 下载 加入VIP, 送下载券

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部