首先,你需要下载的MiniGUI 的包:
这两个包的下载需要你在 上注册过才可以下载,免费注册的,自己去下吧
图形界面程序
一些小例子
在/home/下创建新的工作目录
[user]# mkdir -p /home/minigui
把 libminigui-1.3.3.tar.gz 解开
[user]# tar zxf libminigui-1.3.3.tar.gz
[user]# tar zxf minigui-res-1.3.3.tar.gz
编译 libminigui ,这个是 minigui 运行所必需的库文件,必须编译成功
[user]# cd libminigui-1.3.3
[user]# ./configure //最简单的编译方式,让它自己去配置 ,这里采用缺省的Thread 模式而不是Lite模式,因为这种方式在 PC 机上使用最方便,后面移到板子上再改成 Lite 模式即可
注意屏幕上的输出,特别是下面几条
checking for FrameBuffer console support... yes
checking for pthread library... yes
checking for TT_FreeType_Version in -lttf... yes
checking for T1_InitLib in -lt1... no
checking for jpeg_std_error in -ljpeg... yes
checking for png_check_sig in -lpng... yes
其中 –lttf –lpng 必须是 yes,不然后面你的程序肯定会有问题,如果这里不是 yes的话,那么就可能是相应的库没有安装。
注:如果库已经正确安装,依然显示为no,例如有checking for png_check_sig in -lpng... no
解决办法:通过vi进入configure文件,查找png,在如下所注黑体处修改
if test "x$build_png_support" != "xno"; then
echo "$as_me:$LINENO: checking for png_check_sig in -lpng" >&5
echo $ECHO_N "checking for png_check_sig in -lpng... $ECHO_C" >&6
if test "${ac_cv_lib_png_png_check_sig+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_check_lib_save_LIBS=$LIBS
#I modified the below line
#LIBS="-lpng -lm $LIBS"
LIBS="-lpng -lm -lz $LIBS"
其中 ttf 库是对 TrueType字体的支持,png库是对 png图形的支持,jpeg库是对jpeng图形的支持,MiniGui里都需要这两个,在后面为板子交叉编译的时候也需要这两个,不然你的程序跑不起来。
如果./configure 结果中显示yes通过了,下面是编译了,执行如下命令。
# make
# make install
如果./configure 结果中显示的是no,则需要手动添加这些库了:
安装zlib库
zlib 库是后面的库的编译基础。首先需要安装这个库。
安装包:zlib-1.2.3.tar.gz
# tar zxf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure
# make
# make install
安装freetype库
解压步骤一致。
在make的时候可能出现以下错误:
1、错误一:
X11/Xlib.h:No such file or directory
解决方法:
sudo apt-get install libx11-dev
2、错误二:
ftdump.c:172:1: pasting "." and "glyph_object" does not give a valid preprocessing token
ftdump.c:182:1: pasting "." and "first_instance" does not give a valid preprocessing token
ftdump.c:191:1: pasting "." and "second_instance" does not give a valid preprocessing token
ftdump.c:201:1: pasting "." and "face_object" does not give a valid preprocessing token
ftdump.c:202:1: pasting "." and "glyph_object" does not give a valid preprocessing token
ftdump.c:203:1: pasting "." and "second_instance" does not give a valid preprocessing token
ftdump.c:863:1: pasting "." and "initial_overhead" does not give a valid preprocessing token
ftdump.c:882:1: pasting "." and "face_object" does not give a valid preprocessing token
make[1]: *** [ftdump.o] Error 1
make[1]: Leaving directory `/software/freetype-1.3.1/test'
make: *** [tttest] Error 2
解决方法:
修改Makefile:
1. 去掉all: ttlib tttest ttpo中的tttest
2. 删除
install:
cd $(FTLIBDIR); $(MAKE) -f $(MAKEFILE) install
cd $(FTTESTDIR); $(MAKE) -f $(MAKEFILE) install
cd $(FTPODIR); $(MAKE) uninstall
中的 cd $(FTTESTDIR); $(MAKE) -f $(MAKEFILE) install
安装png库
安装包:libpng-1.0.10rc1.tar.gz
Libpng 不提供有效的 configure 脚本,所以只好自己动手改 Makefile 文件了
# cp scripts/makefile.linux Makefile //把 Scripts 下的一个 makefile 拷出来自己动手改,在Ubuntu中一般不需要修改 【Linux公社 】
# make
# make install
安装jpeg库
安装包:jpegsrc.v6b.tar.gz
# cd jpeg-6b
# ./configure –perfix=/usr/local –enable-shared
# make
# make install
重新安装libminigui
在安装完成了所有的支持库以后,重新进入libminigui文件夹,运行configure命令后,应该所安装的支持库都显示yes
#./configure