Linux下MiniGUI库的安装
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库的安装的更多相关文章
- 【Linux开发】Linux下jpeglib库的安装详解
Linux下jpeglib库的安装详解 首先要下载所需的库压缩包:jpegsrc.v6b.tar.gz或 jpegsrc.v8b.tar.gz 然后将下载的压缩包随便放在和解压到你喜欢的地方. # t ...
- Linux 下 boost 库的安装,配置个人环境变量
部分引自: https://blog.csdn.net/this_capslock/article/details/47170313 1. 下载boost安装包并解压缩到http://www.boos ...
- boost.asio学习笔记一、linux下boost库的安装
欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46761029 学习开源库第一步就是编译安装好库,然后执行成功一个 ...
- Mysql依赖库Boost的源码安装,linux下boost库的安装
boost‘准标准库’安装过程.安装的是boost_1_60_0. (1)首先去下载最新的boost代码包,网址www.boost.org. (2)进入到自己的目录,解压: bzip2 -d bo ...
- 谈谈Linux下动态库查找路径的问题 ldconfig LD_LIBRARY_PATH PKG_CONFIG_PATH
谈谈Linux下动态库查找路径的问题 ldconfig LD_LIBRARY_PATH PKG_CONFIG_PATH 转载自:http://blog.chinaunix.net/xmlrpc.ph ...
- Linux下指定版本编译安装LAMP
说明: 操作系统:CentOS 6.5 64位 需求: 编译安装LAMP运行环境 各软件版本如下: MySQL:mysql-5.1.73 Apache:httpd-2.2.31 PHP:php-5.2 ...
- Linux下动态库生成和使用
Linux下动态库生成和使用 一.动态库的基本概念 1.动态链接库是程序运行时加载的库,当动态链接库正确安装后,所有的程序都可以使用动态库来运行程序.动态链接库是目标文件的集合,目标文件在动态链接库中 ...
- Linux下Memcache服务器端的安装
最近在研究怎么让Discuz!去应用Memcache去做一些事情,记录下Memcache安装的过程. Linux下Memcache服务器端的安装服务器端主要是安装memcache服务器端,目前的最新版 ...
- 【最详细最完整】在Linux 下如何打包免安装的QT程序?
在Linux 下如何打包免安装的QT程序? 版权声明:嵌入式linux相关的文章是我的学习笔记,基于Exynos 4412开发板,一部分内容是总结,一部分是查资料所得,大家可以自由转载,但请注明出处! ...
随机推荐
- LeetCode初级算法之数组:26 删除排序数组中的重复项
删除排序数组中的重复项 题目地址:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/ 给定一个排序数组,你需要在 ...
- 团队作业part3--需求改进&系统设计
一.需求&原型改进 1. 需求的修改 借鉴其他开发游戏的组的经验以及老师的建议,针对之前的需求分析,作出如下修改: 问题1:这款游戏对玩家的吸引力与驱动性有所不足. 修改1:增加成就系统与排行 ...
- vue props默认值国际化报错
未做国际化处理 tabLabel: { type: Array, default: () => (["a", "b", "c"]) } ...
- 判断wangeidtor中输入框内容为空
在我做的项目中,产品没有要求图片多媒体等,暂时只需要标题正文表格之类的,在保存的时候校验内容不为空 刚开始考虑的是editor.txt.html()获取到html片段在判断标签中的值,但是太过繁琐 后 ...
- 算法-数位dp
算法-数位dp 前置知识: \(\texttt{dp}\) \(\texttt{Dfs}\) 参考文献 https://www.cnblogs.com/y2823774827y/p/10301145. ...
- tomcat-1-介绍篇
java语言分为三个体系: javase javaee,是javase的基础 一般就是指jdk javaee java的企业版本 其实是一套规范,就是用java语言做企业开发(目前看来就是开发一些动态 ...
- SpringBoot如何利用Actuator来监控应用?
目录 Actuator是什么? 快速开始 引入依赖 yml与自动配置 主程序类 测试 Endpoints 官方列举的所有端点列表 启动端点 暴露端点 配置端点 发现页面 跨域支持 实现一个定义的端点 ...
- Java 8 新特性:日期处理
1. Java 8 日期处理新特性 Java 8基于ISO标准日期系统,提供了java.time包来处理时间日期,且该包下的所有类都是不可变类型而且线程安全. 2. 关键类 Instant:瞬时实 ...
- Unity 游戏的暂停,继续,重开,退出
1.暂停游戏. Time.timeScale = 0; 2.继续游戏. Time.timeScale = 1; Time.timeScale = 0可以暂停游戏,Time.timeSc ...
- IDEA中flink程序报错找不到类
Idea中运行flink程序,报错找不到类,其中pom文件中一项依赖为: <dependency> <groupId>org.apache.flink</groupId& ...