移植平台:
ubuntu:14.04 开发板:s5pv210(A8) Minigui版本:3.0.12
-----------------------------------------------------
以下软件是开发板正常运行的必须安装包,在MiniGui官网可以下载 http://www.minigui.org/zhcn/【已放在嵌入式软件组资料共享文件夹】
-----------------------------------------------------
├── freetype-2.3.9-fm20100818.tar.gz
├── jpegsrc.v7.tar.gz
├── libmgplus-1.2.4.tar.gz
├── libminigui-gpl-3.0.12.tar.gz
├── libpng-1.2.37.tar.gz
├── mg-samples-3.0.12.tar.gz
├── minigui-res-be-3.0.12.tar.gz
└── zlib-1.2.2.tar.gz
依赖关系:
libpng (zlib);
libmgplus(libminigui)
mg-samples(libminigui,libmgplus)

----------------------------------------------------------------------------------------
PS:本教程的安装目录为 /opt/minigui/arm/cross 安装包都放在 /opt/minigui/arm
在安装之前,确保ubuntu安装了gawk、automake、autoconf、m4、g++等
在其他平台移植也适用,把交叉工具链修改对应的就行。
----------------------------------------------------------------------------------------

-----------------------------------------------------
1.编译Freetype库:【指定交叉工具链,指定安装地址】
-----------------------------------------------------
(1)./configure --host=arm-linux --enable-static --prefix=/opt/minigui/arm/cross
(2)make
(3)make install
【若出错,没有internal,在对应报错的路径自行创建 internal文件夹 】

-----------------------------------------------------
2.编译jpeg库:【指定交叉工具链,指定安装地址】
-----------------------------------------------------
(1)CXX=arm-linux-g++ LD=arm-linux-ld AS=arm-linux-as AR=arm-linux-ar ./configure --prefix=/opt/minigui/arm/cross --build=i386-linux --host=arm-linux --target=arm-linux --enable-shared
(2)make
(3)make install

-----------------------------------------------------
3.编译zlib库:【先安装zlib,因为libpng依赖zlib,指定交叉工具链,指定安装地址】
-----------------------------------------------------
(1)CC=arm-linux-gcc CXX=arm-linux-g++ LD=arm-linux-ld AS=arm-linux-as AR=arm-linux-ar ./configure -prefix=/opt/minigui/arm/cross --shared
(2)make
(3)make install

-----------------------------------------------------
4.编译png库:【指定交叉工具链,指定安装地址】
-----------------------------------------------------
(1)export LDFLAGS="-L/opt/minigui/arm/cross/lib"
(2)export CPPFLAGS="-I/opt/minigui/arm/cross/include"
(3)./configure --prefix=/opt/minigui/arm/cross --build=i386-linux --host=arm-linux --target=arm-linux
(4)make
(5)make install

-----------------------------------------------------
5.编译libmgplus-1.2.4库:【指定交叉工具链,指定安装地址】
-----------------------------------------------------
(1)./configure --target=arm-unknown-linux --host=arm-unknown-linux --prefix=/opt/minigui/arm/cross CC=arm-linux-gcc CPP=arm-linux-cpp CXX=arm-linux-g++ LD=arm-linux-ld AR=arm-linux-ar RANLIB=arm-linux-ranlib STRIP=arm-none-linux-gnueabi-strip
(2)make
(3)make install
【若出错:
configure: WARNING: using cross tools not prefixed with host triplet
checking pkg-config is at least version 0.9.0... yes
checking for MINIGUI... configure: error: Package requirements (minigui >= 3.0.10) were not met:

No package 'minigui' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables MINIGUI_CFLAGS
and MINIGUI_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

【解决办法】
export PKG_CONFIG_PATH=/opt/minigui/arm/cross/lib/pkgconfig/

继续make
make install

-----------------------------------------------------
6.编译资源库minigui-res-be-3.0.12:【指定交叉工具链,指定安装地址】
-----------------------------------------------------
(1)CC=arm-linux-gcc CXX=arm-linux-g++ LD=arm-linux-ld AS=arm-linux-as AR=arm-linux-ar ./configure --prefix=/opt/minigui/arm/cross
(2)make
(3)make install

-----------------------------------------------------
7.编译核心库libminigui-gpl-3.0.12:【指定交叉工具链,指定安装地址】
-----------------------------------------------------
(1)CC=arm-linux-gcc CXX=arm-linux-g++ LD=arm-linux-ld AS=arm-linux-as AR=arm-linux-ar CFLAGS="-I/opt/minigui/arm/cross/include -I/usr/local/arm/arm-2009q3/arm-none-linux-gnueabi/include " CPPFLAGS="-g -I/opt/minigui/arm/cross/include -I/usr/local/arm/arm-2009q3/arm-none-linux-gnueabi/include " CXXFLAGS="-g -I/opt/minigui/arm/cross/include -I/usr/local/arm/arm-2009q3/arm-none-linux-gnueabi/include " ./configure --prefix=/opt/minigui/arm/cross --host=arm-linux --target=arm-linux --build=i386-linux --with-osname=linux --with-targetname=fbcon --enable-autoial --disable-vbfsupport --enable-tslibial --disable-screensaver --disable-splash --enable-procs
(2)【
vim src/newgal/pcxvfb/Makefile
修改194行,将/usr/include去掉:
INCLUDES = -I$(abs_top_srcdir)/src/include -I$(abs_top_srcdir)/include \
-I$(abs_top_srcdir)/src/newgal/ -I/usr/include/
否则编译pcxvfb.c将出错

(3)make
(4)make install

-----------------------------------------------------
8.编译例程mg-samples-3.0.12:【指定链接动态库】
-----------------------------------------------------
./configure CC=arm-linux-gcc CXX=arm-linux-g++ LD=arm-linux-ld AS=arm-linux-as AR=arm-linux-ar CPPFLAGS=-I/opt/minigui/arm/cross/include prefix=/opt/minigui/arm/cross PKG_CONFIG_PATH=/opt/minigui/arm/cross/lib/pkgconfig
make
make install

线程版编译程序:
(1)arm-linux-gcc -o helloworld helloworld.c -L/opt/minigui/arm/cross/lib -lminigui_ths -ljpeg -lm -lminigui_ths -ldl -lpng -lpng12 -lts -lz -I/opt/minigui/arm/cross/include

进程版,在mg-samples-3.0.12[mginit]文件夹编译得到例程的mginit可执行文件:
(1)arm-linux-gcc mginit.c taskbar.c desktop.c -o mginit -I/opt/minigui/arm/cross/include -L/opt/minigui/arm/cross/lib -lminigui_procs -lpng -ljpeg -lz -lm -lts
(2)arm-linux-gcc -o helloworld helloworld.c -L/opt/minigui/arm/cross/lib -ljpeg -lm -lminigui_procs -ldl -lpng -lpng12 -lts -lz -I/opt/minigui/arm/cross/include

----------------------------------------------交叉编译安装部分完成,下面是移植到开发板----------------------------------------------------------------

-----------------------------------------------------
9.拷贝全部安装文件到开发板 /usr/local【自行设定】
-----------------------------------------------------
(1)cp /opt/minigui/arm/cross/* 全部复制到 /usr/local 下
(2)export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH 【设置minigui的lib的环境变量,让程序正常运行】

-----------------------------------------------------
9.修改MiniGui的配置环境
-----------------------------------------------------
(1)修改开发板上minigui配置文件vi /usr/local/etc/MiniGUI.cfg
把其中的system段修改成如下:
[system]
# GAL engine and default options
gal_engine=fbcon
defaultmode=240x320-32bpp 【32bpp 根据开发板的显示屏的分辨率设定,网上的基本是16bpp。这里卡住了差不多2天】

# IAL engine
ial_engine=tslib //使用触摸功能
mdev=/dev/event0 //这里的event0可能创建在 /dev/input/event0 自行查看
mtype=IMPS2

[fbcon]
defaultmode=240x320-32bpp 【32bpp 必须是32bpp,不然显示不正常,触摸不正常】

-----------------------------------------------------
10.配置tslib库(触摸)
-----------------------------------------------------
(1)移植Tslib到开发板,本教程是放在/usr/local/tslib
(2)配置tslib环境:
export TSLIB_ROOT=/usr/local/tslib
export TSLIB_TSDEVICE=/dev/event0
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_CALIBFILE=/etc/pointercal_a70
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib
(3)修改/usr/local/tslib/etc/ts.conf 中的内容应该是:
module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear

-----------------------------------------------------
11.校准触摸屏
-----------------------------------------------------
(1)运行/usr/local/tslib/bin/ts_calibrate

-----------------------------------------------------
12.最后把之前编译好的helloworld 拷贝到开发板运行
-----------------------------------------------------
(1)最后把helloworld拷贝到开发板中运行。

s5pv210移植Minigui3.0.12的更多相关文章

  1. ubuntu12.4上安装minigui3.0.12

    在ubuntu12.4上安装minigui3.0.12 一下载源文件 移植所需的文件可以从minigui官网下载:http://www.minigui.org/en/download/ 主要文件有: ...

  2. 在ubuntu12.4上安装minigui3.0.12

      在ubuntu12.4上安装minigui3.0.12 一下载源文件 移植所需的文件可以从minigui官网下载:http://www.minigui.org/en/download/ 主要文件有 ...

  3. Minigui3.0 自定义遥控输入引擎

    本人最近在从事minigui的开发工作,使用的gui版本为最新的3.0.12,平台环境为海思的HI3515. 在历经千辛万苦,终于将gui成功的移植到了开发板上,这里不多赘述,没有移植成功的朋友可以点 ...

  4. Mono 3.0.12 支持可移植类库

    Mono 3.0.12已于6月19日发布.对跨平台开发者而言,对可移植类库的支持可能是该版本最重要的变化.该技术可以使一个DLL支持.NET.Windows Store.Windows Phone.S ...

  5. VisualSVN 4.0.12补丁原创发布

    VisualSVN 4.0.12补丁原创发布

  6. hadoop2.2.0 + hbase 0.94 + hive 0.12 配置记录

    一开始用hadoop2.2.0 + hbase 0.96 + hive 0.12 ,基本全部都配好了.只有在hive中查询hbase的表出错.以直报如下错误: java.io.IOException: ...

  7. Ubuntu14.04安装和配置Tomcat8.0.12(转)

    Ubuntu14.04长的好看,所以一时间很感兴趣,研究各种软件的安装和开发环境的配置.今天先把安装的tomcat 8.0.12的教程分享给大家.如果你需要,请收藏!!!   工具/原料 系统环境:U ...

  8. Ubuntu14.04安装和配置Tomcat8.0.12

    Ubuntu14.04长的好看,所以一时间很感兴趣,研究各种软件的安装和开发环境的配置.今天先把安装的tomcat 8.0.12的教程分享给大家.如果你需要,请收藏!!!   官方网站下载最新的tom ...

  9. Red Gate系列之六 SQL Test 1.0.12.3 Edition SQL测试工具 完全破解+使用教程

    原文:Red Gate系列之六 SQL Test 1.0.12.3 Edition SQL测试工具 完全破解+使用教程 Red Gate系列之六 SQL Test 1.0.12.3 Edition S ...

随机推荐

  1. Rails上传文件

    1.view <%= form_tag({:method =>"post",:controller =>"welcome",:action=& ...

  2. android 定位的几种方式介绍

    [地理位置] android 定位的几种方式介绍 开发中对于地图及地理位置的定位是我们经常要用地,地图功能的使用使得我们应用功能更加完善,下面 www.androidkaifa.com 总结了一下网络 ...

  3. 10-30SQLserver基础--(备份和还原、分离和附加数据库)、语句查询操作

    一.数据库是一个大容量的存储数据的仓库,为了保证数据完整性,防止一些数据的意外丢失等情况,需要对数据进行备份和还原. 备份数据不影响数据库的正常运行. 1.备份.还原数据库 首先对数据库进行备份,操作 ...

  4. DAY9-python并发之多进程

    一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程.P ...

  5. css水平居中(一)

    第一种方法:使用text-align属性. 看到一篇博客,也不知道是不是我理解的问题,博客上说text-align可以是内联元素水平居中,我感觉这样的说法是不是有些不准确. text-align属性规 ...

  6. (修改)oracle11g监听多台主机配置,用pl/sql连接操作多个数据库详解

    很多朋友在开发项目中并不是每个人用一个数据库,而是有单独的一台主机作为开发的数据库服务器,这样,就需要我们的开发人员去连接它. 首先是进入oracle的 Net  Mananger:

  7. Hadoop运行程序不报错只有warn也没反应也不输出结果的解决办法

    log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFact ...

  8. Springboot中AOP统一处理请求日志

    完善上面的代码: 现在把输出信息由先前的system.out.println()方式改为由日志输出(日志输出的信息更全面) 现在在日志中输出http请求的内容 在日志中获取方法返回的内容

  9. 关于Bundle对象的思考

    在开发过程中,我们经常使用bundle对象来携带二进制数据,通过INTENT传递出去,那么BUNDLE对象到底是什么?其结构如何? 简要来说,bundle对象类似于一个map,内部是通过<key ...

  10. 【摘自张宴的"实战:Nginx"】try_files指令

    语法:try_files param1 [param2...paramN] fallback 默认值:none 使用环境: location 该指令用于告诉nginx测试每个文件是否存在,并且使用首先 ...