教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 法律文档 >

Minigui移植uClinux

来源:网络收集 时间:2026-08-29
导读: Minigui移植 1. 交叉编译环境 交叉编译环境安装在 ~/nios2-linux/toolchain-mmu/x86-linux2/bin/ 在 .bash_profile 文件中添加 PATH=$PATH:/home/szh/nios2-linux/toolchain-mmu/x86-linux2/bin:$HOME/bin [user]# source . bash_profile 2. 建立源码库 创建

Minigui移植

1. 交叉编译环境

交叉编译环境安装在 ~/nios2-linux/toolchain-mmu/x86-linux2/bin/ 在 .bash_profile 文件中添加 PATH=$PATH:/home/szh/nios2-linux/toolchain-mmu/x86-linux2/bin:$HOME/bin [user]# source . bash_profile

2. 建立源码库

创建以下文件夹

/home/szh/miniGUI/nios2/ 将以下文件解压在该文件夹下 zlib-1.2.3.tar.tar

libpng-1.0.10rc1.tar.gz

jpegsrc.v6b.tar.gz

3. 安装 zlib 库,这个是后面的库的编译基础。

[user]# cd zlib-1.2.3

[user]# CC=nios2-linux-gnu-gcc LDSHARED=〝nios2-linux-gnu-ld -shared〞 ./configure --prefix=/opt/nios2/ --shared [user]# make [user]# su

[root]# make install [root]# exit

安装完后检查一下目录 /usr/local/nios2/nios2-linux/ [include,lib] ,假如 include 中没有 zlib.h 之类的头文件,lib 中没有 libz.so.1.2.3 ,那就自己手动拷到这些目录下去,记着拷的时候把所有的 *.h 都需要拷过去,在拷库的时候用 cp –a libz.* /?./lib 就行,要用上 –a 选项

4. 安装 png 库

这个是用来显示 png 图形的,MiniGUI 里很多图都是 png 的,如果没有这个库,你的 MiniGUI 将无法正常工作,切记切记!库不要用最新的,最新的容易有问题,用这个老一点的就没问题了。

Libpng 不提供有效的 configure 脚本,所以只好自己动手改 Makefile 文件了

[user]# cp scripts/makefile.linux Makefile //把Scripts下的一个makefile 拷出

打开Makefile文件,修改以下部分

CC=nios2-linux-gnu-gcc //修改这里

# where \prefix=/opt/nios2 //修改这里

# Where the zlib library and include files are located #ZLIBLIB=/usr/local/lib #ZLIBINC=/usr/local/include

ZLIBLIB=/opt/nios2/lib //修改这里 ZLIBINC=/opt/nios2/include //修改这里 [user]# make [user]# su

[root]# make install [root]# exit

5. 安装jpeg库

首先在本机上编译一下,主要是它的 configure 文件设计得有问题,得先用 gcc 编译一个 dummy.c 的文件,然后才能后面编译,不然的话就会出现 libtool 找不到之类的错误

[user]# ./configure --enable-shared --enable-static [user]# make

[user]# make clean

[user]# ./configure --prefix=/opt/nios2 CC=nios2-linux-gnu-gcc --enable-shared --enable-static

[user]# make [user]# su

[root]# mkdir –p /opt/nios2/man/man1 [root]# mkdir –p /opt/nios2/ bin [root]# make install [root]# exit

6. 安装 libttf 库

这个是 TrueType 字体的支持库,用来显示文字的。 注意:MiniGUI 的文档说只支持 1.3.1 版本的 ttf 库,不要把版本弄错了 :)

[user]# cd freetype-1.3.1 // 进到目录里去

[user]# mkdir –p libttf/extend // 自己另外建立一个目录 [user]# cp lib/* lib/arch/ansi/* libttf/ // 把有用的东西拷出来

[user]# cp lib/extend/* libttf/extend/ // 把extend目录下的文件也拷出来

注意 cp 命令不要用 –r 选项,因为会把一些没用的东西出拷出来的

拷贝完成了,现在来自己手动编译了 [user]# cd libttf

[user]# nios2-linux-gnu-gcc -c -fPIC -O2 freetype.c // 这个.c文件包括了其它所有的.c 文件

[user]# nios2-linux-gnu-gcc -c -fPIC -O2 -I./ extend/*.c // 把 extend 下所有的 .c 文件全部编译

[user]# nios2-linux-gnu-gcc --shared -o libttf.so *.o // 生成最后的动态链接库 [Root]# mkdir –p /usr/local/nios2/nios2-linux/include/freetype1/freetype [Root]# cp *.h extend/*.h /usr/local/nios2/nios2-linux/include/freetype1/freetype [Root]# cp libttf.so /usr/local/nios2/nios2-linux/lib [root]# exit

7. 编译libminigui

在 libminigui-1.6.10/ 下创建一个脚本文件 buildlib-linux-nios2,输入以下内容:

#!/bin/sh

rm config.cache config.status -f

CC=nios2-linux-gnu-gcc \\ ./configure \\

--prefix=/home/szh/miniGUI/nios2/target \\ --build=i386-linux \\

--host=nios2-unknown-linux \\ --target=nios2-unknown-linux \\ --enable-shared \\ --enable-static \\ --with-osname=linux \\ --with-style=fashion \\ --disable-micemoveable \\ --disable-cursor \\ --enable-newgal \\ --enable-nativegal \\ --enable-galfbcon \\ --enable-fblin4l \\ --enable-textmode \\ --enable-dummyial \\ --enable-autoial \\ --enable-ads7846ial \\ --enable-nativeial \\ --disable-qvfbial \\

--disable-latin9support \\ --disable-big5support \\ --enable-ttfsupport \\ --enable-ttfcache \\ --disable-savebitmap \\ --enable-jpgsupport \\ --enable-pngsupport \\ --disable-imegb2312 \\ --disable-aboutdlg \\ --disable-savescreen \\ --enable-videoshadow \\ --enable-fixedmath \\

[user]# ./buildlib-linux-nios2 [user]# make

[user]# make install

[user]# cd /home/szh/miniGUI/nios2/target [user]# su

[root]# cp –a lib/* /usr/local/nios2/nios2-linux/lib/

[root]# cp –a include/* /usr/local/nios2/nios2-linux/include/ [root]# cp –a etc/* /usr/local/nios2/nios2-linux/etc/ [root]# exit

最后,安装 popt 库,这个库在编译 mde 程序时需要使用,不然编译没法通过 :)

http://gd.tuwien.ac.at/utils/rpm.org/dist/rpm-4.1.x/popt-1.7.tar.gz 我是从这里下载的

[user]# tar zxf popt-1.7.tar.gz [user]# cd popt-1.7 [user]# ./configure --prefix=/usr/local/arm/2.95.3/arm-linux/ --host=arm-linux --enable-shared --enable-static [user]# make

[Root]# make install

一切很顺利,搞定了。 交叉编译环境设置好了!

OK ,下面是把 minigui 移植到你的板子上去了。

我在 /opt 目录下建立了一个 rootfs 目录,即 /opt/rootfs ,用来建立我的嵌入式系统的根目录,现在我需要把 minigui 的库文件放到里面去,

建立目录

[Root]# mkdir –p /opt/rootfs/usr/local/[lib,etc]

把 /usr/local/arm/2.95.3/arm-linux/lib 中相应的库拷到 /opt/rootfs/usr/local/lib 目录下去

下面是我拷的库文件:

libjpeg.a libmgext-1.3.so.3 libminigui.a libpng.so.2 libttf.a libz.so

libjpeg.la libmgext-1.3.so.3.0.0 libminigui.la libpng.so.2.1.0.10rc1 libttf.so libz.so.1

libjpeg.so libmgext.a l …… 此处隐藏:3814字,全部文档内容请下载后查看。喜欢就下载吧 ……

Minigui移植uClinux.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/435707.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)