九鼎创展论坛中文版English
登录 | 立即注册 设为首页收藏本站 切换到宽版
查看: 5124|回复: 1
打印 上一主题 下一主题

x4412&ibox虚拟机编译环境的搭建笔记

[复制链接]
跳转到指定楼层
楼主
发表于 2015-6-23 11:03:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

记录的很有流水账的嫌疑。。。
{:soso_e113:}

主机:Win7-64位
虚拟机:VMware11.0.0(VMware-workstation-full-11.0.0-2305329.1418091545.exe) +
        Ubuntu 12.04.5 LTS(ubuntu-12.04.5-desktop-amd64.iso)
建Ubuntu虚拟机的的时候:分配的磁盘空间和内存要尽量大点:比如我分配80G磁盘,2G内存,CPU也尽量好点,不然很可能很悲剧!
最好不要联网,不然可以让你等很久。
sudo apt-get update 获得一下最近的软件包的列表(最好搞一下,不然有些软件装不了)
sudo apt-get gedit(vim) 安装gedit(或者vim)

安装 JDK6.0: jdk-6u27-linux-x64.bin
给个下载地址:
http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u27-oth-JPR
环境变量设置什么的,网上有很多。

安装android源码的依赖包
sudo apt-get install git-core
sudo apt-get install gnupg
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install gperf
sudo apt-get install libsdl1.2-dev(教程手册上是 libsdl-dev,可能是升级了)
sudo apt-get install libwxgtk2.6-dev
sudo apt-get install build-essential
sudo apt-get install zip(一般都有了,有点多余)
sudo apt-get install curl
sudo apt-get install libncurses5-dev(已经存在了??奇怪!)
sudo apt-get install zlib1g-dev(也是最新的?)
sudo apt-get install genromfs

安装64位系统的一些必要补丁包
sudo apt-get install lsb-core
sudo apt-get install libc6-dev-i386(最新版本了!)
sudo apt-get install g++-multilib
sudo apt-get install lib32z1-dev
sudo apt-get install lib32ncurses5-dev

gcc --version 查看发现gcc版本是4.6.3 ,因为版本太新会出错,所以要改成4.4版本。
sudo apt-get install gcc-4.4
sudo apt-get install g++-4.4
sudo apt-get install g++-4.4-multilib
降级方法:
cd /usr/bin
sudo mv gcc gcc.bk
sudo ln -s gcc-4.4 gcc
sudo mv g++ g++.bk
sudo ln -s g++-4.4 g++

解压android4.4的源码包。(注意千万不要使用root权限,会有意想不到的错误;用一般用户就可以了。)
源码包来自x4412开发板的光盘B(貌似论坛有下载,找不到可以联系我):x4412_ics_rtm_v10.tar.bz2

tar xvf x4412_ics_rtm_v10.tar.bz2
在某个文件里解压:比如我在 /home/wu/x4412android4.4/ 下

以上内容就是x4412开发板光盘里的用户手册《x4412 android平台用户手册.pdf》第3章的内容一样一样的!!
以下内容就是手册上没提到的一些可能出错的情况。

编译uboot:./mk -u 成功!(五分钟左右)
./out/release/路径下生成了:
exynos4x12-irom-sd.sh  readme.txt  sd_fusing.sh  ubootpak.bin 这四个文件

编译内核:./mk -k 成功!(十分钟左右)
./out/release/路径下生成了:
zImage 这个文件

编译文件系统:./mk -s 出错! 错误信息: "./mk: 102: ./mk: source: not found"
改错方法:
打开mk脚本:gedit mk
修改第一行:#!/bin/sh  --> #!/bin/bash  保存退出。

=====================================================
=继续编译:./mk -s 出错! 错误信息:                                             =
=        error while loading shared libraries: libz.so.1:                             =       出现这个错误!
=        cannot open shared object file: No such file or directory           =              也是对自己无语        !
=原来是:没有安装64位系统的一些必要补丁包^^!)                     =
=====================================================

装好补丁继续:9:50-11:00 出错! 错误信息:
        /bin/bash: xmllint: command not found
        make: *** [out/target/product/x4412/system/etc/system_fonts.xml] Error 127
执行一下:xmllint 发现原来需要安装:libxml2-utils
sudo apt-get install libxml2-utils

装好继续:11:00-15:20 出错! 错误信息:
        collect2: error: ld terminated with signal 9 [Killed]
        make: *** [out/target/product/x4412/obj/SHARED_LIBRARIES/libwebviewchromium_intermediates/LINKED/libwebviewchromium.so] Error 1
        make: *** Waiting for unfinished jobs....
不知道什么意思的错误(暂未解决,貌似可以不管)。重新再继续......


很久。。。在./out/release/路径下生成了:
system.img 这个文件,成功的一点。

但还有下面这个错误:
        ./mk: line 108: mkimage: command not found一般情况下我们会马上sudo apt-get install mkimage,然后发现没有这个软件包可以安装,然后就很纠结(新手的痛啊)。
执行一下:mkimage 发现原来需要安装的是:u-boot-tools
sudo apt-get install u-boot-tools
为什么要执行一下mkimage,而不是直接sudo apt-get install mkimage,我怀疑是因为。。。我也暂时不知道。。。^^!

继续,成功??!!
在./out/release/路径下生成了:
boot.img  ramdisk-uboot.img 这两个文件
算成功了吧!!!???

编译QT:
./mk -b 出错!
        You must install 'makeinfo' on your build machine
        makeinfo is usually part of the texinfo package in your distribution
执行一下:makeinfo 发现原来需要安装:texinfo
安装texinfo:sudo apt-get install texinfo

继续,出错!
        You must install 'hg' on your build machine
        make: *** [core-dependencies] Error 1
执行一下:hg 发现原来需要安装:mercurial
安装mercurial
sudo apt-get install mercurial

继续,出错!
        You must install 'svn' on your build machine
        svn is usually part of the subversion package in your distribution
make: *** [core-dependencies] Error 1
执行一下:svn 发现原来需要安装:subversion
安装subversion
sudo apt-get install subversion

继续,成功??!!
在./out/release/路径下生成了:
qt-rootfs.img 这个文件

总之在编译文件系统:./mk -s(需要等太久了) 和 ./mk -u 过程中多次出错,并且安装了如下软件包:
sudo apt-get install libxml2-utils
sudo apt-get install u-boot-tools
sudo apt-get install texinfo
sudo apt-get install mercurial
sudo apt-get install subversion
sudo apt-get install whois(这个是在Ubuntu14.04上出现的)


我觉得可以在编译前,提前安装好这几个软件包,会比较好。




























回复

使用道具 举报

沙发
发表于 2015-9-29 19:27:04 | 只看该作者
恩比较详细,解决了部分问题谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳市九鼎创展科技官方论坛 ( 粤ICP备11028681号-2  

GMT+8, 2024-5-5 23:20 , Processed in 0.018897 second(s), 16 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表