编译QT文件系统

uboot源码下载
方法
# git clone
https://github.com/TOPEET-Develop/iTop4412_uboot_public_merg
e.git
#cd iTop4412_uboot_public_merge

 

Linux Qt文件系统uboot的编译
SCP核心板1G
内存
# ./build_uboot.sh SCP_1GDDR
# make
SCP核心板2G
内存
# ./build_uboot.sh SCP_2GDDR
# make

Kernel源码分为两套,一套是针对Android4.4文件系统,一套是针对其它所有文件系统。
注意:kernel配置时config_for_XX_YY_ZZ 文件很重要,其中:
XX 是操作系统,包括android,linux,Ubuntu
YY 是 核心板类型,包括 scp, pop ,pop2G
ZZ 是底板类型,包括精英版elite, 全能版supper

其它所有文件系统使用的Kernel代码下载和编译方法如下表所示:
kernel源码下载方

#git clone
https://github.com/TOPEET-Develop/iTop4412_kernel_public_m
erge.git

 

Linux Qt文件系统Kernel的编译
SCP核心板+精英
底板
#cp config_for_linux_scp_elite .config
#make zImage
SCP核心板+全能
底板
#cp config_for_ubuntu_scp_supper .config
#make zImage


6.3.3 Linux Qt文件系统下载及制作
Git命令下载:
# git clone https://github.com/TOPEET-Develop/linux_rootfs.git -b
rootfs_qt_master
上一条命令字符“-b”后有空格

root: Linux的根文件系统;
test: Linux的测试程序;
tools: 用于制作文件系统的工具及ramdisk.img二进制文件,该文件专用于Linux系统.
Tools目录下面的mkfs脚本用于制作文件系统镜像,把该脚本拷贝到Linux_rootfs目录
下面,命令行执行即可生成system.img.

交叉编译 jpeg 库
#cd /root/yizhi/libtool-2.2
#./configure -prefix=/usr
#make
#make install
这样 libtool 工具即可完成。
Libtool 工具安装完成。切换到编译 jpeg-6b 时的窗口,然后执行如下的命令:
#cp /usr/share/libtool/config/config.guess /root/yizhi/jpeg-6b
cp /usr/share/libtool/config/config.sub /root/yizhi/jpeg-6b
#cd /root/yizhi/jpeg-6b
#./configure -enable-shared -enable-static
修改 Makefile 文件中的 CC,AR,AR2 变量,修改为:
CC=/usr/local/arm/4.4.1/bin/arm-linux-gcc
AR=/usr/local/arm/4.4.1/bin/arm-linux-ar rc
AR2=/usr/local/arm/4.4.1/bin/arm-linux-ranlib
保存,退出。
#make
编译通过。
执行以下命令即可完成 jpeg 头文件和库文件的制作工作。
#cp jpeglib.h jconfig.h jmorecfg.h /root/yizhi/arminclude
#cp .libs/libjpeg.so* /root/yizhi/armlib

交叉编译 e2fsprogs-1.40.2
编译 e2fsprogs-1.40.2 是为了得到二个文件,uuid.h 及 libuuid.so,编译
Qtopia2.2.0需要这两个文件。
首先解压 e2fsprogs-1.40.2,解压后执行下面的命令:
cd /root/yizhi/e2fsprogs-1.40.2
置环境变量
#export PATH=/usr/local/arm/4.4.1/bin:$PATH
#export CC=/usr/local/arm/4.4.1/bin/arm-linux-gcc
以上的两个环境变量如果已经设置,就不需要重新设置了,执行下面的命令来配置和编
译e2fsprogs-1.40.2:
# ./configure --enable-elf-shlibs --host=arm-linux --with-cc=/usr/local/arm/5.4.0/bin/arm-linux-gcc --with-linker=/usr/local/arm/5.4.0/bin/arm-linux-ld
# make
也许会提示“makeinfo 命令没有找到”,不过没关系。
将e2fsprogs-1.40.2/lib/录下uuid 的文件夹复制到yizhi/arminclude 下
# cp -r lib/uuid /root/yizhi/arminclude
将e2fsprogs-1.40.2/lib/录下面的库文件复制到/root/yizhi/armlib 下
# cp lib/libuuid.so* /root/yizhi/armlib/
e2fsprogs-1.40.2 相关工作完成。

交叉编译 libpng 库     (存在问题)
将libpng-1.2.19.tar.bz2 解压到/root/yizhi 录下
# cd /root/yizhi/libpng-1.2.1
# cp scripts/makefile.linux/Makefile .
./configure --enable-static  --host=arm-linux
注意,这里的makefile 不是用./configure 生成的,而是直接从scripts 文件夹里面
复制的(见上面的cp命令),修改Makefile文件:
# vim Makefile
修改:
AR_RC=/usr/local/arm/4.4.1/bin/arm-linux-ar rc
CC=/usr/local/arm/4.4.1/bin/arm-linux-gcc
RANLIB=/usr/local/arm/4.4.1/bin/arm-linux-ranlib
保存
# make
# cp libpng12.so* /root/yizhi/armlib
# cp *.h /root/yizhi/arminclude
完成libpng 头文件和库文件的制作。
 

交叉编译zlib
编译前解压 zlib-1.2.3,解压后
# cd /root/yizhi/zlib-1.2.3
设置环境变量
# export PATH=/usr/local/arm/4.4.1/bin:$PATH
# export export LD_LIBRARY_PATH=/usr/local/arm/5.4.0/arm-linux/lib:$LD_LIBRARY_PATH
# export CC= /usr/local/arm/4.4.1/bin/arm-linux-gcc
如果上面已经设置了 PATH 和 LD_LIBRARY_PATH 环境变量,这里不需要重新设置,
执行以下命令生成Makefile 文件:
# ./configure –-shared
修改一下:
# gedit Makefile
修改为:
CC=/usr/local/arm/4.4.1/bin/arm-linux-gcc
LDSHARED=/usr/local/arm/4.4.1/bin/arm-linux-gcc -shared-Wl,-soname,
libz.so.1
CPP=/usr/local/arm/4.4.1/bin/arm-linux-gcc-E
AR=/usr/local/arm/4.4.1/bin/arm-linux-ar rc
RANLIB=/usr/local/arm/4.4.1/bin/arm-linux-ranlib
保存
#make
将编译生成的动态库及相关的头文件分别复制到armlib 和arminclude 录下
# cp libz.so* /root/yizhi/armlib
# cp *.h /root/yizhi/arminclude


经过以上步骤的操作,编译Qtopia2.2.0 时所需的头文件和库文件制作完成.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值