minigui移植到hi3531
- 格式:docx
- 大小:29.71 KB
- 文档页数:8
miniGUI3.0.12移植到Hi3531
分类: linux2013-04-22 10:01 412人阅读 评论(1) 收藏 举报
minigui hi3531
miniGUI3.0.12移植到Hi3531
之前一直在用miniGUI2.0的版本,看到现在miniGui3.0 GPL开源了,所以下载来移植到Hi3531平台上,下面阿来详细将这个移植过程记录如下:
一、移植资源包:
下载miniGUI3.0.12组件
简单介绍一下各个库:
freetype:字体
qvfb2和gvfb::虚拟显存,主要用在pc机上做仿真
jpegsrc:显示jpeg图像时要用到的库
libpng:显示png图像时要用到的库
zlib:PNG压缩算法
libminigui:minigui3.0.12的核心库
minigui-res:minigui3.0.12资源文件,包括字体、图标、位图等
mg-samples:minigui3.0.12例子程序
minigui3.0.12可选组件: libmg3d(3D支持)、libmgi(提供输入接口)、libmgp(提供打印机接口的支持)、libmgplus(2D矢量图支持和图像加速)、libmgutils(提供一些常用对话框的模板),可以根据自己的需要来使用。
在这里我只安装了freetype,zlib,,jpegsrc,,libpng, libmgplus以及res,主库,和sample。 这里提示下,下面操作的安装目录是:/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi 这里你自己选择合适的安装目录就可以了。
二、编译zlib库
编译配置脚本:
1. [root@localhost]CC=arm-hisiv100nptl-linux-gcc \
2. CXX=arm-hisiv100nptl-linux-g++ \
3. LD=arm-hisiv100nptl-linux-ld \
4. AS=arm-hisiv100nptl-linux-as \
5. AR=arm-hisiv100nptl-linux-ar \
6. ./configure \
7. --prefix=/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi \
8. --shared
9. [root@localhost] make
10. [root@localhost] make install
三、编译png库
编译配置脚本:
1. [root@localhost]CC=arm-hisiv100nptl-linux-gcc \
2. CXX=arm-hisiv100nptl-linux-g++ \
3. LD=arm-hisiv100nptl-linux-ld \
4. AS=arm-hisiv100nptl-linux-as \
5. AR=arm-hisiv100nptl-linux-ar \
6. ./configure \
7. --prefix=/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi \
8. --build=i386-linux \
9. --host=arm-hisiv100nptl-linux \
10. --target=arm-hisiv100nptl-linux \
11. [root@localhost] make
12. [root@localhost] make install
注意;如果编译时报错提示zlib库没有安装的,解决方法:
在编译之前(我是在configure之前),手动指定一下参数: 1. export CFLAGS="-I/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi/include"
2. export LDFLAGS="-L/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi/lib"
四、编译jpeg库
编译配置脚本:
1. [root@localhost]CC=arm-hisiv100nptl-linux-gcc \
2. CXX=arm-hisiv100nptl-linux-g++ \
3. LD=arm-hisiv100nptl-linux-ld \
4. AS=arm-hisiv100nptl-linux-as \
5.
AR=arm-hisiv100nptl-linux-ar \
6. ./configure \
7. --prefix=/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi \
8. --build=i386-linux \
9. --host=arm-hisiv100nptl-linux \
10. --target=arm-hisiv100nptl-linux \
11. --enable-shared \
12. [root@localhost] make
13. [root@localhost] make install
五、编译freetype库
编译配置脚本:
1. [root@localhost]./configure \
2. --host=arm-hisiv100nptl-linux \
3. --prefix=/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi \
4. --enable-static \
运行配置脚本后,修改:
1. [root@localhost] vim config.cache
2. # 修改如下行
3. ac_cv_path_LD=${ac_cv_path_LD=arm-linux-gnu-ld}
4. ac_cv_prog_CC=${ac_cv_prog_CC=arm-linux-gnu-gcc}
5. ac_cv_prog_CPP=${ac_cv_prog_CPP='arm-linux-gnu-gcc -E'}
6. #重新配置,再运行一次配置脚本
7. #修改Makefile文件,以跳过编译test目录。
8. # 去掉“all:”后的变量“tttest” 9. # 注释掉“install:”下的第二行:“cd $(FTTESTDIR); $(MAKE) –f$(MAKEFILE) install”
之后编译:
1. [root@localhost]make
2. [root@localhost]make install
六、安装minigui资源库
编译配置脚本:
1. [root@localhost]CC=arm-hisiv100nptl-linux-gcc \
2. CXX=arm-hisiv100nptl-linux-g++ \
3. LD=arm-hisiv100nptl-linux-ld \
4. AS=arm-hisiv100nptl-linux-as \
5. AR=arm-hisiv100nptl-linux-ar \
6. ./configure \
7. --prefix=/opt/hisi-linux-nptl/arm-hisiv100-linux/arm-hisiv100-linux-uclibcgnueabi \
8. [root@localhost]make
9. [root@localhost]make install
七、编译minigui核心库
编译配置脚本:
1. [root@localhost]CC=arm-hisiv100nptl-linux-gcc \
2. CPP=arm-hisiv100nptl-linux-cpp \
3. LD=arm-hisiv100nptl-linux-ld \
4. AR=arm-hisiv100nptl-linux-ar \
5. RANLIB=arm-hisiv100nptl-linux-ranlib \
6. STRIP=arm-hisiv100nptl-linux-strip \
7. LDFLAGS="-L/home/minicross/miniarm/lib_hi3531" \
8. CPPFLAGS="-I/home/minicross/miniarm/include_hi3531" \