在D1的官方资料中,D1镜像的开发和编译环境是Ubuntu 12.04.3 但是我所有的PC的系统都是windows的,为了编译这个镜像,再装一个ubuntu的系统不太现实,用虚拟机又懒的弄。
刚好手边有个树莓派B+,就尝试用b+来编译D1的镜像。
步骤如下:
- 首先按照我之前的帖子,把代码下到树莓派上
http://www.banana-pi.org.cn/thread-348-1-1.html
2.当步骤1完成后,代码就存在了Lamobo-D1文件夹下面了,在Lamobo-D1同级下,使用命令:
sudo ./Lamobo-D1/build/build.sh命令就开始编译了
但是这个时候,会编译失败的
3.开始还以为是文件缺失的原因,后面网上搜了下,才发现tjcfeng的帖子http://jingyan.eeboard.com/article/73857
原来是编译器的问题
所以需要修改一些文件
(1). Lamobo-D1/build/build.sh的修改
prepare_tools()
{
sudo apt-get update -y
sudo apt-get install -yq lzop
if uname -m
== ‘x86_64’ ]; then
sudo apt-get install -yq --force-yes ia32-libs ia32-libs-multiarch liblzo2-2:i386 liblzma5:i386
fi
#if ! -d $DEV_ROOT/compiler/arm-2009q3 ]; then
# mkdir -p $DEV_ROOT/compiler
# cd $DEV_ROOT/compiler
# echo Extracting compiler…
# tar jxf arm-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
#fi
}
把这个函数的标红的地方注释掉
(2) Lamobo-D1/src/kernel/Makefile
#CROSS_COMPILE ?= arm-none-linux-gnueabi-
CROSS_COMPILE ?=
(3) Lamobo-D1/src/samples/下面的几个Makefile
把armnone-linux-gnueabi-的地方替换为空
这样修改以后,重新使用sudo ./Lamobo-D1/build/build.sh编译,就可以生成了
截止发帖时,依然处于编译过程中
树莓派编译镜像太费时间了