Minigui-3.0.12 开发记录

来源:互联网 发布:抢车位怎么恢复数据 编辑:程序博客网 时间:2024/05/19 19:13

1. 移植篇

移植环境

Fedora14, gcc-4.5.1, gnu make 3.82

minigui源码包:(官网下载http://www.minigui.org/zhcn/download/)
libminigui-gpl-3.0.12.tar
minigui-res-be-3.0.12.tar
mg-samples-3.0.12.tar
gvfb-1.0.0.tar
……
mesa-6.5-minigui.tar

Fedora14中安装模拟环境

在home目录下创建一个minigui的目录

mkdir minigui

将这些压缩包拷贝到home/minigui目录下

首先安装minigui的资源文件:
[root@localhost minigui]# tar -xvzf minigui-res-be-3.0.12.tar
[root@localhost minigui]#cd minigui-res-be-3.0.12
[root@localhost minigui]#./configure [如果需要安装到指定路径需指定–prefix=目标路径,否则为默认路径/usr/local]
[root@localhost minigui-res-be-3.0.12]# make install

安装minigui的库文件
[root@localhost minigui]# tar -xvzf libminigui-gpl-3.0.12.tar
[root@localhost minigui]# cd libminigui-gpl-3.0.12
[root@localhost libminigui-gpl-3.0.12]# ./configure
[root@localhost libminigui-gpl-3.0.12]# make -j4
[root@localhost libminigui-gpl-3.0.12]# make install

安装minigui的例子库
[root@localhost minigui]# tar -xzvf mg-samples-3.0.12.tar
[root@localhost minigui]#cd mg-samples-3.0.12
[root@localhost mg-samples-3.0.12]# ./configure
[root@localhost mg-samples-3.0.12]# make -j4 [编译是如果提示相关头文件或库找不到则需安装对应的组件如:libmgplus-1.2.4.tar等]
[root@localhost mg-samples-3.0.12]# make install

安装虚拟缓冲模拟器gvb
[root@localhost minigui]# tar -xzvf gvfb-1.0.0.tar
[root@localhost minigui]#cd gvfb-1.0.0
[root@localhost gvfb-1.0.0]# ./cmake ./ [生成Makefile]
[root@localhost gvfb-1.0.0]# make -j4
[root@localhost gvfb-1.0.0]# make install

make -j4时错误解决:
在gvfb-1.0.0/src/CMakeFiles/gvfb.dir目录下有一个link.txt文件,这里面是链接gvfb时用的命令,链接时会调用,在项目根目录,即gvfb-1.0.0/里运行sudo cmake ./后,把原link.txt文件加上:
-lX11 -L/usr/lib/libXtst.so -L/usr/lib/libX11.so 就行了.

测试minigui程序
[root@localhost lf_skin]# gvfb -m& [后台启动gvfb]
[root@localhost lf_skin]# ./demo

安装Opengl库– mesa
[root@localhost minigui]# tar -xzvf mesa-6.5-minigui.tar
[root@localhost minigui]#cd mesa-6.5-minigui
[root@localhost mesa-6.5-minigui]# make linux-minigui

Run Mesa demo for MiniGUI:
cdprogs/minigui export LD_LIBRARY_PATH=/mesa-6.5-minigui/lib/
$ ./gears2

注意:
1. 提示找不到lminigui库?
打开 mesa-6.5-minigui/configs/linux-minigui文件,找到
APP_LIB_DEPS = -ljpeg -lpng -lminigui -lm -lpthread 这一行
因为minigui-3.0.12生成的库为minigui_ths, 所以需要把-lminigui改为-lminigui_ths或创建一个软连接libminigui.so

  1. 提示/usr/local/lib/libminigui_ths.so: undefined reference to `dlsym’
    针对miniGUI3.0.12,不加-ldl会报错, APP_LIB_DEPS中加入-ldl

  2. glut_cmap.c:23:66:fatal error:X11/Xmu/StdCmap.h: No such file
    安装:yum install libX11-devel
    yum install libXmu-devel
    yum install libXt-devel
    **

移植PNG(注minigui-3.0.12只支持libpng-1.2.37(从minigui官网下载))

移植freetype
在海思平台开启–enable-cache=yes, –with-ttfcachesize=大小 ,应用程序使用ttf字体时程序崩溃,目前尚且不知道原因?

1 0
原创粉丝点击