Linux下MiniGUI库的安装

今天试了下安装MiniGUI的库

先仿照官网的教程安装

传送门:MiniGUI官网

一、配置依赖环境

安装构建工具

apt install binutils autoconf automake libtool make cmake pkg-config
#注意这里的apt我配置了alias,alias apt="sudo apt",以下用到apt均是,不再说明

安装依赖库

这里的安装,还有个libpng12-dev (libpng-dev on Ubuntu 18.04 instead),但是我用的是WSL(Windows Subsystem Linux)的Ubuntu 18.04,安装的时候说没有这个库

apt install libgtk2.0-dev libjpeg-dev libpng12-dev libpng-dev libfreetype6-dev libinput-dev libdrm-dev libsqlite3-dev libxml2-dev libssl1.0-dev electric-fence

二、安装MiniGUI

克隆源码

git clone git@github.com:VincentWei/build-minigui-4.0.git

但是在我电脑上没试成功,后面我在github找到了它的源码

传送门:项目目录

然后克隆下载

编译安装

这里因为是从github上面的,所以就不按照官网的教程来了。按照Github上面项目的README

./autogen.sh
./configure; make; sudo make install
#这里需要注意,我这里这个用户是没有根目录的权限的。所以使用sudo make install

三、配置

以上的安装环境是看官方的说明完成的,基本上没有什么问题吧。

下面的配置是我看了这篇文章写的

安装qvfb

apt install qt4-dev-tools

修改配置文件

cd minigui
cp etc/MiniGUI.cfg /etc/
...
[system]
# GAL engine and default options
# The equivalent environment variable: MG_GAL_ENGINE
# gal_engine=pc_xvfb
gal_engine=qvfb
# The equivalent environment variable: MG_DEFAULTMODE
defaultmode=800x600-16bpp # IAL engine
# The equivalent environment variable: MG_IAL_ENGINE
# ial_engine=pc_xvfb
ial_engine=qvfb
mdev=/dev/input/mice
mtype=IMPS2
...

四、运行编译运行例程

先下载官方的示例代码

mg-samples-5.0.0.tar.gz

在这个页面的这个东西MiniGUI 5.0.3->MiniGUI Samples (V5.0.0)这里

然后解压

tar -zxf mg-samples-5.0.0.tar.gz
cd mg-samples-5.0.0

就可以了

configure 和 make

按照上面的文章说明,这样配置一下

./configure --prefix=/home/username/install PKG_CONFIG_PATH=/home/username/install/minigui/lib/pkgconfig CPPFLAGS=-l/usr/local/include/minigui

然后就报错了,如下

kevin@ubuntu:~/Application/mg-samples-5.0.0 $ ./configure --prefix=/home/kevin/install PKG_CONFIG_PATH=/home/kevin/install/minigui/lib/pkgconfig CPPFLAGS=-l/usr/local/include/minigui
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make sets $(MAKE)... (cached) yes
checking for gcc... gcc
checking whether the C compiler works... no
configure: error: in `/home/kevin/Application/mg-samples-5.0.0':
configure: error: C compiler cannot create executables
See `config.log' for more details
kevin@ubuntu:~/Application/mg-samples-5.0.0 $

五、总结

那么今天的MiniGUI的学习就到此为止了,虽然最后没有跑起一个例程。但是还是挺有意思的,可以学习一下一个普通的GUI库的安装和编译,也是挺好的。

Linux下MiniGUI库的安装的更多相关文章

  1. 【Linux开发】Linux下jpeglib库的安装详解

    Linux下jpeglib库的安装详解 首先要下载所需的库压缩包:jpegsrc.v6b.tar.gz或 jpegsrc.v8b.tar.gz 然后将下载的压缩包随便放在和解压到你喜欢的地方. # t ...

  2. Linux 下 boost 库的安装,配置个人环境变量

    部分引自: https://blog.csdn.net/this_capslock/article/details/47170313 1. 下载boost安装包并解压缩到http://www.boos ...

  3. boost.asio学习笔记一、linux下boost库的安装

    欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46761029 学习开源库第一步就是编译安装好库,然后执行成功一个 ...

  4. Mysql依赖库Boost的源码安装,linux下boost库的安装

      boost‘准标准库’安装过程.安装的是boost_1_60_0. (1)首先去下载最新的boost代码包,网址www.boost.org. (2)进入到自己的目录,解压: bzip2 -d bo ...

  5. 谈谈Linux下动态库查找路径的问题 ldconfig LD_LIBRARY_PATH PKG_CONFIG_PATH

    谈谈Linux下动态库查找路径的问题 ldconfig LD_LIBRARY_PATH  PKG_CONFIG_PATH 转载自:http://blog.chinaunix.net/xmlrpc.ph ...

  6. Linux下指定版本编译安装LAMP

    说明: 操作系统:CentOS 6.5 64位 需求: 编译安装LAMP运行环境 各软件版本如下: MySQL:mysql-5.1.73 Apache:httpd-2.2.31 PHP:php-5.2 ...

  7. Linux下动态库生成和使用

    Linux下动态库生成和使用 一.动态库的基本概念 1.动态链接库是程序运行时加载的库,当动态链接库正确安装后,所有的程序都可以使用动态库来运行程序.动态链接库是目标文件的集合,目标文件在动态链接库中 ...

  8. Linux下Memcache服务器端的安装

    最近在研究怎么让Discuz!去应用Memcache去做一些事情,记录下Memcache安装的过程. Linux下Memcache服务器端的安装服务器端主要是安装memcache服务器端,目前的最新版 ...

  9. 【最详细最完整】在Linux 下如何打包免安装的QT程序?

    在Linux 下如何打包免安装的QT程序? 版权声明:嵌入式linux相关的文章是我的学习笔记,基于Exynos 4412开发板,一部分内容是总结,一部分是查资料所得,大家可以自由转载,但请注明出处! ...

随机推荐

  1. windows+jenkins+iis 部署

    1.安装jenkins 下载地址:https://www.jenkins.io/download/ 2.需要配置java环境 配置教程:https://www.cnblogs.com/liuxiaoj ...

  2. CSS基础-层叠与继承

    继承 一些属性可以被继承,一些不可以. 一般来说,字体颜色.字体大小会被继承,关于形状的如 padding .border .margin.width等就不会被继承.哪些属性属于默认继承很大程度上是由 ...

  3. 关于Redis分布式锁这一篇应该是讲的最好的了,先收藏起来再看!

    前言 在Java并发编程中,我们通常使用到synchronized .Lock这两个线程锁,Java中的锁,只能保证对同一个JVM中的线程有效.而在分布式集群环境,这个时候我们就需要使用到分布式锁. ...

  4. 【题解】NOI 系列题解总集

    每次做一道 NOI 系列的估计都很激动吧,对于我这种萌新来说( P1731 [NOI1999]生日蛋糕 练习剪枝技巧,关于剪枝,欢迎看我的垃圾无意义笔记 这道题是有一定难度的,需要运用各种高科技剪枝( ...

  5. mybatis逆向工程运行

    命令: mvn mybatis-generator:generate 项目结构: generatorConfig.xml内容示例 <?xml version="1.0" en ...

  6. Java中CAS原理分析(volatile和synchronized浅析)

    CAS是什么? CAS英文解释是比较和交换,是cpu底层的源语,是解决共享变量原子性实现方案,它定义了三个变量,内存地址值对应V,期待值E和要修改的值U,如下图所示,这些变量都是在高速缓存中的,如果两 ...

  7. 三、TestNG的基本注解(1)

    Before类别和After类别注解 举例说明 创建两个TestNGAnnotationTest.java和TestNGAnnotationTest2.java的类 TestNGAnnotationT ...

  8. k8s ingress - traefik

    前面提到过 k8s 的 ingress 有 ingress-nginx,traefik,haproxy 等多种.今天来实践一下 tarefik. 闲言少叙,直接上代码. # cat traefik.y ...

  9. jQuery的事件机制和其他知识

    jQuery 设置宽度和高度 宽度操作: $(selector).height(); //不带参数表示获取高度 $(selector).height(200); //带参数表示设置高度   宽度操作: ...

  10. redis源码学习之lua执行原理

    聊聊redis执行lua原理 从一次面试场景说起   "看你简历上写的精通redis" "额,还可以啦" "那你说说redis执行lua脚本的原理&q ...