建立基于ARM-uClinux的MiniGUI开发环境

原创 2007年09月19日 10:10:00

即交叉编译MiniGUI,使经过arm-elf-gcc编译后的MiniGUI程序能运行在ARM-uClinux平台上。

准备的软件包:libminigui-str-1.6.2.tar.gz minigui-res-str-1.6.tar.gz

交叉编译过程如下:

1)解压minigui-res-str-1.6.tar.gz,设置config.linux文件,将编译器设置为arm-elf-gcc。并将安装路径设置为arm-elf-gcc所在的目录。

2)解压libminigui-str-1.6.2.tar.gz 配置编译环境如下:

CC=arm-elf-gcc /

CFLAGS="-D__linux__ -I/root/minigui_lib/include -fno-builtin -nostartfiles" /

LDFLAGS="-Wall -elf2flt -static -L/root/minigui_lib/lib -lc" /

./configure /

    --prefix=/opt/uClinux/arm-elf /

    --build=i386-linux /

    --host=i686-pc-linux-gnu /

    --target=arm-elf /

    --disable-shared /

    --enable-static /

    --with-osname=uclinux /

    --disable-lite /

    --enable-standalone /

    --disable-micemoveable /

    --disable-cursor /

    --disable-newgal /

    --enable-nativegal /

    --disable-galfbcon /

    --enable-fblin8 /

    --disable-textmode /

    --enable-dummyial /

    --enable-autoial /

    --enable-nativeial /

    --disable-qvfbial /

    --disable-latin9support /

    --disable-big5support /

    --disable-savebitmap /

    --disable-jpgsupport /

    --disable-pngsupport /

    --disable-imegb2312 /

    --disable-aboutdlg /

    --disable-savescreen /

    --enable-incoreres /

    --enable-mousecalibrate /

    --enable-fontsserif /

    --enable-fontcourier /

    --enable-fontsymbol /

    --enable-fontvgas /

    --enable-vbfsupport /

    --enable-rbfsupport /

    --enable-rbf16 /

--enable-gifsupport

   3) GAL移植

需准备的程序:COMMLCD.C,LCDDRIVE.C,LCDDRIVE.H,LPC2294.H

下面对这些程序进行分析。

LPC2294.H定义ARM的各种寄存器,I/O口,中断口,串行口等的地址。

LCDDRIVE.HLCDDRIVE.C定义显示器驱动。

COMMLCD.C图形引擎的定义。

具体步骤如下:

A)      libminigui-str-1.6.2/src/gal/native下建立COMMLCD.CLCDDRIVE.C,LCDDRIVE.H,LPC2294.H

B)      Makefile.am里的LIBNATIVE_LA_SOURCES变量所在行末尾添加LCDDRIVE.C LCDDRIVE.H COMMLCD.C LPC2294.H

C)      修改libminigui-str-1.6.2/src/gal/gal.c,在GFX结构添加{“commlcd”,InitNative,TermNative}

D)      修改libminigui-str-1.6.2/src/gal/native.c,

#ifdef_Native_GAL_COMMLCD

  else if(strcmp(gfx->id,”commlcd”)==0)

psd=commlcd.Open(&commlcd);

#endif

改为

//#ifdef_Native_GAL_COMMLCD

  else if(strcmp(gfx->id,”commlcd”)==0)

psd=commlcd.Open(&commlcd);

//#endif

即注销ifdefendif

    修改libminigui-str-1.6.2/src/gal/native.h,同样将extern SCREENDEVICE commlcd上下的ifdefendif给注销掉。

   4) IAL移植

需要准备的程序:ADS7843.C ADS7843.H comm._drive.c comminput.c comminput.h CONFIG.H I2C.C I2C.H LPC2294.H

ADS7843.CADS7843.H是触摸屏控制电路的驱动程序。

Comminput.ccomminput.h是普通输入设备(键盘,鼠标,触摸屏)驱动程序。

I2C.CI2C.H是连接键盘等输入设备的I2C总线控制程序。

具体步骤如下:

A)      libminigui-str-1.6.2/src/ial下建立ADS7843.C,ADS7843.H,comm._drive.c,comminput.c,comminput.h,CONFIG.H,I2C.C,I2C.H LPC2294.H

B)      配置Makefile.am,新增变量COMMINPUT_SRCS= ADS7843.C ADS7843.H comm._drive.c comminput.c comminput.h CONFIG.H I2C.C I2C.H LPC2294.H

C)      LIBIAL_LA_SOURCES变量后加入$(COMMINPUT_SRCS)

D)      修改ial.c,将#include “comminput.h” 上下的#ifdef#endif注释掉。在INPUT结构中添加{“comm”,InitCOMMInput,TermCOMMInput}

接着编译和安装即可。安装完毕,便可交叉编译minigui源程序,如下

#arm-elf-gcc –elf2flt –o helloworld helloworld.c –lminigui –lpthread

编译后的程序便可在目标系统上运行。

相关文章推荐

MiniGui开发:ubuntu-14.04环境移植MiniGui

开发项目在嵌入式平台上使用MiniGui作为用户界面开发工具,在工作之余准备在ubuntu14.04上搭建一个测试环境,这样代码测试起来比较方便。前前后后搞了好多天,遇到了很多麻烦,但是最后还是跑通了...

MiniGui开发:Ubuntu14.04环境安装qvfb工具

在Ubuntu14.04上搭建MiniGui开发环境,需要依赖qvfb工具。 minigui官网提供了qvfb的安装包,下载连接:MiniGui官网...

Minigui-3.0.12 开发记录

**移植环境Fedora14, gcc-4.5.1, gnu make 3.82minigui源码包:(官网下载http://www.minigui.org/zhcn/download/) lib...

Linux下Minigui开发环境的搭建(PC+S3C2440

花了两天时间终于把Minigui的开发环境搭建好了,遇到了很多问题,看了很多人的博客,对我的启发很大。关键是以前偷懒装redhat的时候为了省空间,很多库文件都没安装搞的自己很狼狈,不过也由于这个原因...
  • judyge
  • judyge
  • 2015年10月26日 10:39
  • 458

uclinux 移植时的开发环境搭建

  • 2011年08月04日 18:16
  • 50KB
  • 下载

搭建MiniGUI开发环境

minigui开发环境

miniGUI主机开发环境的构建

  • 2010年04月03日 08:14
  • 243KB
  • 下载

配置minigui开发环境

根据该文件中的 minigui移植.pdf中的 路径设置均与手册一致  我的第一步是安装libminigui-1.6.10 第二安装zlib库 其中gcc偷梁换柱时要相当小心 记得要检测gcc是否换...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:建立基于ARM-uClinux的MiniGUI开发环境
举报原因:
原因补充:

(最多只允许输入30个字)