arm上的linux小,ARM-LINUX 系列 (六) ----minigui的安装 -- 终极成功版!!

2023-11-25 02:30

本文主要是介绍arm上的linux小,ARM-LINUX 系列 (六) ----minigui的安装 -- 终极成功版!!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境:ubuntu16.4  kylin 32位(一开始是64位的不过后来由于各种各样的问题,换成32位了),不过基本上我遇到的所有问题这篇博客都写了。所以按照本篇博客安装,有很大几率安装成功。在32位环境下安装时,按照本博客安装时,可能不会遇到那么多错误,跳过即可。反正本人安装成功了~~~在64位下安装,不保证能成功!!

一、文件的下载安装前准备 :sudo apt-get install build-essential 包含许多基本库

点此链接下载  下面的都要下载

3f288ee285423cc6e29fa526842ca321.png

3f288ee285423cc6e29fa526842ca321.png

3f288ee285423cc6e29fa526842ca321.png

二、建立一个文件夹,将上面的文件放在那

3f288ee285423cc6e29fa526842ca321.png

2.1首先安装依赖库:tar zxf zlib-1.2.2.tar.gz #编译zlib

cd zlib-1.2.2/./configure sudomakesudomake installcd ..

同样的步骤,安装 libjpeg

tar zxf  jpegsrc.v7.tar.gz同样的步骤 安装libpng tar zxf   libpng-1.2.37.tar.gz

此处configure为  ./configure  --enable-shared注意 如果此处出现报错configure: error: ZLib not installed那么回到安装zlib的界面 用下面这个指令安装CFLAGS="-O3 -fPIC" ./configure   //使用64位元的方法进行编译同样的步骤 安装freetypetar xzf freetype-2.3.9-fm20100818.tar.gz

安装qvfb2  ./configure时需要qt3的库,解决办法:sudo vim /etc/apt/sources.list  添加包含libqt3的库,deb http://cz.archive.ubuntu.com/ubuntu precise main

添加完后sudo apt-get update 更新库这时安装 sudo apt-get install libqt3-mt 库,提示依赖库没有被包含sudo apt-get -f install  包含依赖的库在sudo apt-get install libqt3-mtsudo apt-get install libqt3-mt-dev安装完毕如果报错checking for X... configure: error: Can't find X includes. Please check your installation and add the correct paths!

那么 sudo apt-get install libx11-dev xorg-dev./configure --with-qt-includes=/usr/lib/qt-3.3/include --with-qt-libraries=/usr/lib/qt-3.3/lib --with-qt-dir=/usr/lib/qt-3.3

依然出现缺少qt3的库sudo ln -s /usr/include/qt3 /usr/lib/qt3/include  建立动态链接重新configure  成功sudo make报错3f288ee285423cc6e29fa526842ca321.png百度修改3f288ee285423cc6e29fa526842ca321.png3f288ee285423cc6e29fa526842ca321.png修改为3f288ee285423cc6e29fa526842ca321.png编译通过sudo make install  安装完毕2.2安装minigui安装 minigui-res-be-3.0.12  方法同上1. tar zxf libminigui-3.0.12-linux.tar.gz./configuresudo makesudo make install2.3f288ee285423cc6e29fa526842ca321.png 

3f288ee285423cc6e29fa526842ca321.png3f288ee285423cc6e29fa526842ca321.png编译出错,提示

3f288ee285423cc6e29fa526842ca321.png

用vim修改

3f288ee285423cc6e29fa526842ca321.png

修改如下3f288ee285423cc6e29fa526842ca321.png修改后重新 sudo make3f288ee285423cc6e29fa526842ca321.png编译通过sudomake install在如下路径新建一个文件3f288ee285423cc6e29fa526842ca321.png3f288ee285423cc6e29fa526842ca321.png3.安装minigui组件tar zxf  libmgplus-1.2.4.tar.gz./configuresudo makesudo make install报错:make[4]: *** [lf_fashion.lo] Error 1

make[4]: Leaving directory `/home/sun/minigui/libmgplus-1.2.4/src/api'

make[3]: *** [all-recursive] Error 1

make[3]: Leaving directory `/home/sun/minigui/libmgplus-1.2.4/src/api'

make[2]: *** [all-recursive] Error 1

make[2]: Leaving directory `/home/sun/minigui/libmgplus-1.2.4/src'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/home/sun/minigui/libmgplus-1.2.4'3f288ee285423cc6e29fa526842ca321.png解决方法:这主要是64位机上编译32位的问题,打开/libminigui-3.0.12-linux/include/common.h 做如下修改:将typedef unsignedintHICON 改为 typedef unsignedlongHICON  然后重新编译libminigui。 解决3f288ee285423cc6e29fa526842ca321.png继续向下编译  全部 ./configure  sudo make sudo make installtar xzf libmgi-2.0.4.tar.gzlibmg3d-1.0.2.tar.gzlibmgutils-1.0.4.tar.gzlibmgp-1.2.2.tar.gzlibmgncs-1.0.8.tar.gz   再次遇到    _va.va = va;3f288ee285423cc6e29fa526842ca321.png修改:3f288ee285423cc6e29fa526842ca321.png3f288ee285423cc6e29fa526842ca321.png需要mgplus,用vim注释掉这一句,编译成功4.编译mg-samples-3.0.12.tar.gz方法  ./configure  sudo make sudo make install

再次遇到缺少mgplus/mgplus.h  依然用vim注释掉出现错误:/usr/local/lib/libminigui_ths.so: undefined reference to `WndClientRect'/usr/local/lib/libminigui_ths.so: undefined reference to `WndRect'结局方法:在该路径:

3f288ee285423cc6e29fa526842ca321.png将WndClientRect与WndRect函数前面的inline删掉。重新编译3f288ee285423cc6e29fa526842ca321.png编译成功3f288ee285423cc6e29fa526842ca321.png此时会看到编译成功后的执行文件安装成功运行  ./helloworld  安装成功3f288ee285423cc6e29fa526842ca321.png

这篇关于arm上的linux小,ARM-LINUX 系列 (六) ----minigui的安装 -- 终极成功版!!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/422977

相关文章

linux本机进程间通信之UDS详解

《linux本机进程间通信之UDS详解》文章介绍了Unix域套接字(UDS)的使用方法,这是一种在同一台主机上不同进程间通信的方式,UDS支持三种套接字类型:SOCK_STREAM、SOCK_DGRA... 目录基础概念本机进程间通信socket实现AF_INET数据收发示意图AF_Unix数据收发流程图A

linux环境openssl、openssh升级流程

《linux环境openssl、openssh升级流程》该文章详细介绍了在Ubuntu22.04系统上升级OpenSSL和OpenSSH的方法,首先,升级OpenSSL的步骤包括下载最新版本、安装编译... 目录一.升级openssl1.官网下载最新版openssl2.安装编译环境3.下载后解压安装4.备份

Ubuntu 22.04 服务器安装部署(nginx+postgresql)

《Ubuntu22.04服务器安装部署(nginx+postgresql)》Ubuntu22.04LTS是迄今为止最好的Ubuntu版本之一,很多linux的应用服务器都是选择的这个版本... 目录是什么让 Ubuntu 22.04 LTS 变得安全?更新了安全包linux 内核改进一、部署环境二、安装系统

从零教你安装pytorch并在pycharm中使用

《从零教你安装pytorch并在pycharm中使用》本文详细介绍了如何使用Anaconda包管理工具创建虚拟环境,并安装CUDA加速平台和PyTorch库,同时在PyCharm中配置和使用PyTor... 目录背景介绍安装Anaconda安装CUDA安装pytorch报错解决——fbgemm.dll连接p

linux打包解压命令方式

《linux打包解压命令方式》文章介绍了Linux系统中常用的打包和解压命令,包括tar和zip,使用tar命令可以创建和解压tar格式的归档文件,使用zip命令可以创建和解压zip格式的压缩文件,每... 目录Lijavascriptnux 打包和解压命令打包命令解压命令总结linux 打包和解压命令打

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

linux如何复制文件夹并重命名

《linux如何复制文件夹并重命名》在Linux系统中,复制文件夹并重命名可以通过使用“cp”和“mv”命令来实现,使用“cp-r”命令可以递归复制整个文件夹及其子文件夹和文件,而使用“mv”命令可以... 目录linux复制文件夹并重命名我们需要使用“cp”命令来复制文件夹我们还可以结合使用“mv”命令总

python安装whl包并解决依赖关系的实现

《python安装whl包并解决依赖关系的实现》本文主要介绍了python安装whl包并解决依赖关系的实现,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、什么是whl文件?二、我们为什么需要使用whl文件来安装python库?三、我们应该去哪儿下

MySQL安装时initializing database失败的问题解决

《MySQL安装时initializingdatabase失败的问题解决》本文主要介绍了MySQL安装时initializingdatabase失败的问题解决,文中通过图文介绍的非常详细,对大家的学... 目录问题页面:解决方法:问题页面:解决方法:1.勾选红框中的选项:2.将下图红框中全部改为英

MySQL9.0默认路径安装下重置root密码

《MySQL9.0默认路径安装下重置root密码》本文主要介绍了MySQL9.0默认路径安装下重置root密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录问题描述环境描述解决方法正常模式下修改密码报错原因问题描述mysqlChina编程采用默认安装路径,