Ubuntu安装
制作Ubuntu的USB启动盘
登陆http://www.pendrivelinux.com/universal-usb-installer-easy-as-1-2-3/,下载USB启动盘制作工具
找到DOWNLOADUUI,下载
下载后,插入U盘运行(Universal-USB-Installer-1.9.5.9.exe目前在技术部服务器有提供)
同意协议,下一步
如下图设置,
Step1:选着Linux发行版
Step2:选择ubuntu镜像所在的路径
Step3:选择插入的U盘
Step4:默认选项
确认
安装Ubuntu
插入制作好的U盘到电脑,重启,按F12(根据实际情况)进入启动选项菜单,选择从U盘启动。
一路不用操作,默认的“TryUbuntuwithoutInstalling”
直至进入Ubuntu试用系统,双击InstallUbuntu图标开始安装,如下图
选择中文
勾选下载更新,勾选安装第三方软件
询问安装类型,建议使用其他选项,可以更好的进行自定义
选择要安装的硬盘进行分区,这里安排是:
500G大小的硬盘
分区挂载点容量
第一个分区/(根分区)30G
第二个分区SWAP4G
第三个分区/opt466G(即剩余的容量)
这么处理,考虑到以后开发相关的都放在opt上,如需重装、升级操作系统,无需破坏开发的资料
操作如下,点击选择目标硬盘的空闲空间,点击添加
如下图设置第一个分区
重复上一步,再添加第二个分区
重复上一步,再添加第三个分区
选择安装启动引导器的设备为硬盘的引导区,点击现在安装
接下来设置时区
设置键盘布局
设置账户信息和计算机信息
等待安装完成
直至提示安装完成,点击重启
重启之后进入系统,弹出更新管理器,选择不升级为14.04,选择安装更新
更新完重启系统
配置ssh
Ctrl+Alt+T打开终端
自动下载配置ssh
sudoapt-getinstallssh
在Windows下使用PuTTY即可使用SSH远程登录
配置vim
vm是vi的升级版本
自动下载配置vim
sudoapt-getinstallvim
开启Ubuntu图形界面的root权限
快捷键打开终端
Ctrl+Alt+T
获取root权限
输入sudo-s输入普通用户登陆的密码,回车获得root权限
修改配置文件/etc/lightdm/lightdm.conf
试用vim打开或者试用gedit打开
vim/etc/lightdm/lightdm.conf
或:
gdit/etc/lightdm/lightdm.conf
编辑后文档内容如下(添加下面加底纹内容):
[SeatDefaults]
greeter-session=unity-greeter
user-session=Ubuntu
greeter-show-manual-login=true
allow-guest=false
设置root用户密码
sudopasswdroot
重启后选择登陆root登陆帐号
注:下文开始,如无特殊说明都是在root用户下进行操作
配置WINDOWS可用XRDP远程桌面
打开终端,自动配置安装xrdp和vnc
apt-getinstallxrdpvnc4servertightvncserver
打开要远程登录用户的home目录,root用户即/root
cd~
创建.xsession文件
echo“gnome-session--session=ubuntu-2d”》.xsession
重启xrdp
/etc/init.d/xrdprestart
在Windows下使用远程桌面连接(请根据实际情况输入ip)
输入账号密码
即可登录
搭建安卓编译开发环境
JAVA库下载、安装与配置
登陆:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html
下载jdk-6u45-linux-x64.bin(技术部服务器上有保存)
需要注意的是,现在官方网站上最新的版本的JDK7,但是这个这个版本是不能用于Android的编译的,一定要去下载JDK6
下载后,修改权限
chmod777jdk-6u45-linux-x64.bin
。/jdk-6u45-linux-x64.bin
安装后产生jdk1.6.0_45目录,把它拷贝到/opt/lib/jvm/jdk6/下面
设置环境变量
vim/etc/environment
添加上底纹部分内容
PATH=“/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/lib/jvm/jdk6/jdk1.6.0_45/bin:/opt/lib/jvm/jdk6/jdk1.6.0_45/jre/bin”
JAVA_HOME=/opt/lib/jvm/jdk6/jdk1.6.0_45
CLASSPATH=/opt/lib/jvm/jdk6/jdk1.6.0_45/lib
Source环境变量
source/etc/environment
查看JAVA版本验证安装,若能看到版本信息则一般安装完成
java-version
版本信息如下
javaversion“1.6.0_45”
Java(TM)SERuntimeEnvironment(build1.6.0_45-b06)
JavaHotSpot(TM)64-BitServerVM(build20.45-b01,mixedmode)
Uboot镜像制作工具下载安装
apt-getinstalluboot-mkimage
安装编译环境需要的库
apt-getinstallgitgnupgflexbisongperfbuild-essentialzipcurllibc6-devlibncurses5-dev:i386x11proto-core-devlibx11-dev:i386libreadline6-dev:i386libgl1-mesa-glx-lts-trusty:i386libgl1-mesa-devg++-multilibmingw32tofrodospython-markdownlibxml2-utilsxsltproczlib1g-dev:i386
ln-s/usr/lib/i386-linux-gnu/mesa/libGL.so.1/usr/lib/i386-linux-gnu/libGL.so
编译器下载、安装与配置
编译器下载、替换4.4版本
apt-getinstallgcc-4.4g++-4.4g++-4.4-multilib
mv-f/usr/bin/gcc/usr/bin/bak_gcc
mv-f/usr/bin/g++/usr/bin/bak_g++
ln-s/usr/bin/gcc-4.4/usr/bin/gcc
ln-s/usr/bin/g++-4.4/usr/bin/g++
测试一下gcc版本号
gcc-v
版本信息如下
Usingbuilt-inspecs.
Target:x86_64-linux-gnu
Configuredwith:。。/src/configure-v--with-pkgversion=‘Ubuntu/Linaro4.4.7-1ubuntu2’--with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs--enable-languages=c,c++,fortran,objc,obj-c++--prefix=/usr--program-suffix=-4.4--enable-shared--enable-linker-build-id--with-system-zlib--libexecdir=/usr/lib--without-included-gettext--enable-threads=posix--with-gxx-include-dir=/usr/include/c++/4.4--libdir=/usr/lib--enable-nls--with-sysroot=/--enable-clocale=gnu--enable-libstdcxx-debug--enable-objc-gc--disable-werror--with-arch-32=i686--with-tune=generic--enable-checking=release--build=x86_64-linux-gnu--host=x86_64-linux-gnu--target=x86_64-linux-gnu
Threadmodel:posix
gccversion4.4.7(Ubuntu/Linaro4.4.7-1ubuntu2)
编译指南
创建项目文件夹
mkdir/opt/item_A33
解压lichee.tar.gz压缩包
tar-zxvflichee.tar.gz-C/opt/item_A33/
解压android.tar.gz压缩包
tar-zxvfandroid.tar.gz-C/opt/item_A33/
进入lichee目录
cd/opt/item_A33/lichee
编译内核
sourcebuildroot/scripts/mksetup.sh
出现以下设置选项,请依照设置
Welcometomkscriptsetupprogress
Allavailablechips:
0.sun8iw5p1
Choice:0
Allavailableplatforms:
0.android
1.dragonboard
2.linux
Choice:0
Allavailablekernel:
0.linux-3.4
Choice:0
Allavailableboards:
0.evb
1.maple
2.redwood
3.y2
4.y3
Choice:4
编译lichee
mklichee
编译过程
INFO:----------------------------------------
INFO:buildlichee。。。
INFO:chip:sun8iw5p1
INFO:platform:android
INFO:kernel:linux-3.4
INFO:board:y3
INFO:output:out/sun8iw5p1/android/y3
INFO:----------------------------------------
INFO:buildbuildroot。。。
externaltoolchainhasbeeninstalled
INFO:buildbuildrootOK.
INFO:buildkernel。。。
INFO:preparetoolchain。。。
Buildingkernel
CHKinclude/linux/version.h
CHKinclude/generated/utsrelease.h
make[1]:“include/generated/mach-types.h”是最新的。
CALLscripts/checksyscalls.sh
CHKinclude/generated/compile.h
CCarch/arm/mach-sunxi/pm/standby/common.o
省略大部分编译过程。。。
make:Leavingdirectory`/opt/item_A33/lichee/linux-3.4/modules/mali‘
regeneraterootfscpio
8772blocks
9475blocks
build_ramfs
Copyboot.imgtooutputdirectory。。。
Copymodulestotarget。。。
INFO:buildkernelOK.
INFO:buildrootfs。。。
INFO:skipmakerootfsforandroid
INFO:buildrootfsOK.
INFO:----------------------------------------
INFO:buildlicheeOK.
INFO:----------------------------------------
(至此编译成功)
单独编译buildroot
mkbr
编译过程
INFO:buildbuildroot。。。
externaltoolchainhasbeeninstalled
INFO:buildbuildrootOK.
单独编译内核
mkkernel
编译过程
INFO:buildkernel。。。
INFO:preparetoolchain。。。
Buildingkernel
CHKinclude/linux/version.h
CHKinclude/generated/utsrelease.h
make[1]:“include/generated/mach-types.h”是最新的。
CALLscripts/checksyscalls.sh
CHKinclude/generated/compile.h
CCarch/arm/mach-sunxi/pm/standby/common.o
CCarch/arm/mach-sunxi/pm/standby/standby_clock.o
CCarch/arm/mach-sunxi/pm/standby/standby_ir.o
CCarch/arm/mach-sunxi/pm/standby/standby_key.o
CCarch/arm/mach-sunxi/pm/standby/standby_power.o
CCarch/arm/mach-sunxi/pm/standby/standby_twi.o
CCarch/arm/mach-sunxi/pm/standby/standby_usb.o
ASarch/arm/mach-sunxi/pm/standby/standby_delay.o
CCarch/arm/mach-sunxi/pm/standby/。/arisc/standby_arisc.o
CCarch/arm/mach-sunxi/pm/standby/。/arisc/arisc_hwmsgbox.o
(省略编译过程。,。)
make:Leavingdirectory`/opt/item_A33/lichee/linux-3.4/modules/mali’
regeneraterootfscpio
8772blocks
9475blocks
build_ramfs
Copyboot.imgtooutputdirectory。。。
Copymodulestotarget。。。
INFO:buildkernelOK.
(至此,内核编译完成)
编译brandy
Bandy目录中存放的是A33平台的bootloader,该目录为A33启动代码,默认不编译。
编译u-boot
cdlichee/brandy/u-boot-2011.09/
makedistclean
makesun8iw5p1_config
make-j2
当编译成功,生成的u-boot-sun8iw5pl.bin文件会自动拷贝到对应的tool目录下,这时候可以直接打包或者其他操作。U-boot-sun8iw5pl.bin启动时是uboot核心可执行程序。
“u-boot-sun8iw5p1.bin”-》“/opt/item_A33/lichee/brandy/u-boot-2011.09/。。/。。/tools/pack/chips/sun8iw5p1/bin/u-boot-sun8iw5p1.bin”
编译android
编译android前请先编译内核
选择方案
souecebuild/envsetup.sh
lunch
出现以下设置选项,请依照设置
You‘rebuildingonLinux
Lunchmenu.。.pickacombo:
1.aosp_arm-eng
2.aosp_x86-eng
3.aosp_mips-eng
4.vbox_x86-eng
5.aosp_manta-userdebug
6.aosp_deb-userdebug
7.aosp_flo-userdebug
8.aosp_grouper-userdebug
9.aosp_tilapia-userdebug
10.mini_armv7a_neon-userdebug
11.mini_x86-userdebug
12.mini_mips-userdebug
13.aosp_mako-userdebug
14.aosp_hammerhead-userdebug
15.astar_y3-eng
16.astar_y3-user
Whichwouldyoulike?[aosp_arm-eng]15
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.2
TARGET_PRODUCT=astar_y3
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a7
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.13.0-46-generic-x86_64-with-Ubuntu-12.04-precise
HOST_BUILD_TYPE=release
BUILD_ID=KVT49L
OUT_DIR=out
============================================
拷贝kenrel和modules
extract-bsp
编译android
make-j?
(?表示启用几个进程编译,一般不要超过cpu的核数)
最后显示信息
Installsystemfsimage:out/target/product/astar-y3/system.img
out/target/product/astar-y3/system.img+out/target/product/astar-y3/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.pmaxsize=822163584blocksize=4224total=591028141reserve=8308608
Android打包
cd到android根目录用pack打包
pack
显示以下信息
copyingtoolsfile
copyingconfigsfile
copyingbootresource
copyingbootfile
packingforandroid
normal
/opt/item_A33/lichee/tools/pack/pctools/linux/eDragonEx/
/opt/item_A33/lichee/tools/pack/out
BeginParsesys_partion.fex
Addpartionboot-resource.fexBOOT-RESOURCE_FEX
Addpartionveryboot-resource.fexBOOT-RESOURCE_FEX
FilePath:boot-resource.fex
FileLength=4bec00Addpartionenv.fexENV_FEX000000000
Addpartionveryenv.fexENV_FEX000000000
FilePath:env.fex
FileLength=20000Addpartionboot.fexBOOT_FEX00000000
Addpartionveryboot.fexBOOT_FEX00000000
FilePath:boot.fex
FileLength=afa000Addpartionsystem.fexSYSTEM_FEX000000
Addpartionverysystem.fexSYSTEM_FEX000000
FilePath:system.fex
FileLength=23175bdcAddpartionrecovery.fexRECOVERY_FEX0000
Addpartionveryrecovery.fexRECOVERY_FEX0000
FilePath:recovery.fex
FileLength=db2000Addpartiondiskfs.fexDISKFS_FEX000000
Addpartionverydiskfs.fexDISKFS_FEX000000
FilePath:diskfs.fex
FileLength=200sys_config.fexLen:0xf397
config.fexLen:0x9ac4
split_xxxx.fexLen:0x200
sys_partition.fexLen:0xf0a
boot0_nand.fexLen:0x8000
boot0_sdcard.fexLen:0x8000
u-boot.fexLen:0xbc000
fes1.fexLen:0x1f60
usbtool.fexLen:0x20600
aultools.fexLen:0x25d92
aultls32.fexLen:0x2295a
cardtool.fexLen:0x14000
cardscript.fexLen:0x6ea
sunxi_mbr.fexLen:0x10000
dlinfo.fexLen:0x4000
arisc.fexLen:0x2bee9
boot-resource.fexLen:0x4bec00
Vboot-resource.fexLen:0x4
env.fexLen:0x20000
Venv.fexLen:0x4
boot.fexLen:0xafa000
Vboot.fexLen:0x4
system.fexLen:0x23175bdc
Vsystem.fexLen:0x4
recovery.fexLen:0xdb2000
Vrecovery.fexLen:0x4
diskfs.fexLen:0x200
Vdiskfs.fexLen:0x4
BuildImg0
Dragonexecuteimage.cfgSUCCESS!
----------imageisat----------
/opt/item_A33/lichee/tools/pack/sun8iw5p1_android_y3.img
packfinish
制作完成
评论
查看更多