QGIS与国产操作系统兼容性测试(Deepin、优麒麟、中标麒麟)
三款国产操作系统使用初步体验一文从操作系统易用性、生态完整性、软件包获取难易程度等方面考察其是否满足日常办公需求。然而对我来说,QGIS是日常最常用的软件之一, QGIS与操作系统的兼容性尤其重要,于是我决定测试一下QGIS在各个国产操作系统运行情况。
本文从QGIS安装、编译两个方面试验QGIS与国产操作系统的兼容性,并将试验结果分享给大家。
01 从软件源安装QGIS
1.1 测试结论
Deepin和优麒麟可以通过添加QGIS软件源的方式成功安装最新版本,即QGIS 3.18。中标麒麟是类Fedora系统,但是本人能力有限,使用EPEL源和Fedora源安装QGIS失败。
1.2 Deepin上安装QGIS
从三款国产操作系统使用初步体验一文得知,Deepin是Debian 10.6的分支版本,按照QGIS安装指南,分两步完成安装:
1、编辑/etc/apt/sources.list添加对应的软件源
sudo vim /etc/apt/sources.list
2、运行安装命令
sudo apt update
sudo apt install qgis qgis-plugin-grass
耐心等待,当看到如下界面时表示安装完成:
从开始菜单找到“QGIS Desktop”,点击启动QGIS:
运行效果:
Deepin操作系统支持QGIS的全部组件和功能模块,包括3D、Grass、SAGA等,使用体验与Windows系统无区别。
1.3 优麒麟上安装QGIS
在优麒麟上安装QGIS的过程与Deepin相同,根据QGIS安装指南,第一步是检查操作系统的版本,所使用的命令如下:
wujianling@wujianling-Vostro-3900:~/dev/QGIS-master$ uname -a
Linux wujianling-Vostro-3900 5.4.0-66-generic #74-Ubuntu SMP Wed Jan 27 22:54:38 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
wujianling@wujianling-Vostro-3900:~/dev/QGIS-master$ lsb_release -c -s
Focal
wujianling@wujianling-Vostro-3900:~/dev/QGIS-master$ cat /etc/debian_version
bullseye/sid
根据输出结果得知,我所安装的优麒麟是Ubuntu 20.04,根据版本信息开始安装QGIS:
1、编辑/etc/apt/sources.list添加对应的软件源
sudo vim /etc/apt/sources.list
2、运行安装命令
sudo apt update
sudo apt install qgis qgis-plugin-grass
安装成功后,在开始菜单找到“QGIS Desktop”,点击运行:
运行效果如图:
由于优麒麟是基于Ubuntu的分发版本,所以像Ubuntu一样支持QGIS的全部组件和功能模块。另外,部分QGIS开发团队成员所使用的操作系统也源于Ubuntu,这为兼容性更添加了一层保证。
1.4 中标麒麟上安装QGIS
中标麒麟官方的软件源没有QGIS的安装包。对于类Fedora系统,首先想到的是EPEL源和Fedora官方源,但是很遗憾,EPEL源上保留的QGIS安装包只有2.14版本,与现在的3.18版本相隔甚远,而Fedora源虽然有最新的安装包,但是依赖库却不匹配。
由于本人能力有限,中标麒麟上安装QGIS失败了。(如果有这方面的高手能指导我安装,请在公众号后台留言赐教,不胜感激!)
02 在国产操作系统编译QGIS
2.1 测试结论
Deepin、优麒麟和中标麒麟三款国产操作系统均能通过编译源代码的方式安装QGIS。所不同的是,Deepin和优麒麟上可以编译QGIS最新版本的源代码,即3.18版。
由于中标麒麟自带的GCC版本为4.9,只支持C++11特性,不支持C++17(QGIS 3.18要求使用C++17编译)新特性,所以基于系统默认配置,我选择编译一个比较老的QGIS版本(QGIS 3.4.7),最终成功将QGIS安装到中标麒麟系统上。
(另外,也许可以采用先升级GCC,再编译QGIS最新版源码的思路,但我还没有时间验证这个思路的可行性。)
2.2 Deepin和优麒麟上编译QGIS源码
由于Deepin和优麒麟二者都是基于Debian,编译源代码的过程大致相同,所以我把这两个系统上QGIS的编译过程写在同一个小节里。
与所有Linux系统一样,编译源代码的过程分为四个步骤:安装依赖库、配置编译选项、编译和安装。
安装依赖库
使用sudo apt-get install命令安装QGIS编译需要的依赖库,具体可以参考之前的文章:自己动手编译QGIS 3.18源代码,含出错大全和解决办法或者官方的编译指南(https://github.com/qgis/QGIS/blob/master/INSTALL.md)。
配置编译选项
使用ccmake图形化界面设置编译相关的选项。
编译和安装
使用make和make install命令,根据配置选项将QGIS编译生成可执行文件。
编译成功后,用./output/bin/qgis启动QGIS,运行效果与apt安装的QGIS相同。
2.3 中标麒麟上编译QGIS
由于中标麒麟官方更新库缺少QGIS编译所需的依赖库,需要从源代码编译,所以编译起来相对复杂,工作量也大一些。以编译QGIS 3.4.7版源代码为例,所选择安装的依赖库及其版本如下:
Python-3.9.2
QScintilla-2.11.6
autoconf-2.71
bison-3.7.5
cmake-3.16.9-Linux-x86_64
curl-7.75.0
dbus-1.13.2
exiv2-0.27.3-Linux64
flex-2.6.0
freetype-2.8
freexl-1.0.6
gawk-5.1.0
gdal-2.4.1
geos-3.9.1
gsl-2.5
isl-0.18
libffi-3.3
librttopo-librttopo-1.1.0
libspatialite-4.3.0a
libxml2-master
libzip-1.7.3
openssl-OpenSSL_1_1_1j
proj-7.2
protobuf-3.6.1
qca-2.3.2
qt-5.12.8
qtkeychain-0.12.0
qwt-6.1.0
readline-8.1
sip-6.0.3
spatialindex-1.9.3
spatialite-2.0
sqlite-3340100
texinfo-6.7
tiff-4.2.0
编译过程曲折艰难,耗费的时间比较长,在此不一一赘述,最终运行效果如图:
03 写在最后的话
国产操作系统与QGIS的兼容性测试,花费了我将近2周的时间,从操作系统的选择、下载、安装,到QGIS的安装、编译和测试,其中的过程并不都是一帆风顺,这里分享一下我的心得:
“QGIS能在国产操作系统上运行”,这是我得到的测试结论,一方面说明国产操作系统做到了兼容与开放,另一方面也说明QGIS对多平台的支持是经得住考验的。
第二,在这过程中我一直思考国产操作系统的选择标准问题。从我个人角度来说,希望一个操作系统简单、易用、稳定、又不失灵活性,有一定的生态圈,Deepin、优麒麟和中标麒麟均满足了以上要求。但是,仅依据上述标准评判和选择一个操作系统,或者对操作系统进行打分排序,是有失公平的,因为每个操作系统的设计和开发理念不同,例如Deepin和优麒麟解决的是国内用户使用Linux中文化和用户习惯问题,而中标麒麟则侧重系统的安全可信和国产化生态,是站在国家安全的角度开发的系统,所以在照顾个人用户习惯方面比另外两个系统稍微逊色一些。
以上是我的个人观点,如有理解不到位的地方,欢迎指正。
版权声明
本文欢迎转载,转载时请注明出处。
QGIS与国产操作系统兼容性测试(Deepin、优麒麟、中标麒麟)相关推荐
- 再获新资质,忆享蓝鲸通过中科方德国产操作系统兼容性测试
喜 讯 忆享科技旗下产品"忆享蓝鲸"通过中科方德国产操作系统的兼容性测试,未来忆享科技能够与中科方德"强强联手",为用户提供更加高效优质的服务. 资质详 1.中 ...
- 深度linux u盘启动安装教程,带你了解国产操作系统“深度(deepin)”之制作U盘启动教程...
原标题:带你了解国产操作系统"深度(deepin)"之制作U盘启动教程 最近也是由于中美贸易关系,国产操作系统一度成为热门话题,在UOS还没正式投入使用以前,我先带大家讲讲我们国产 ...
- linux系统安装u盘教程deepin,带你了解国产操作系统“深度(deepin)”之制作U盘启动教程...
原标题:带你了解国产操作系统"深度(deepin)"之制作U盘启动教程 最近也是由于中美贸易关系,国产操作系统一度成为热门话题,在UOS还没正式投入使用以前,我先带大家讲讲我们国产 ...
- 国产操作系统第一股,杨涛的麒麟信安是否名副其实?
文丨熔财经 作者|星影 随着chatGPT和AI技术的火热,国产芯片和操作系统能否适应人机交互也成了不少科技媒体的焦点.对于信息技术的发展而言,不仅只有芯片,操作系统更是灵魂,作为最基本,同时也是最重 ...
- 麒麟操作系统(银河麒麟+中标麒麟)破解密码合集
文章目录 一.桌面操作系统 银河麒麟桌面操作系统V10(适用CPU架构:x86_64.arm64.mips) 银河麒麟桌面操作系统V10SP1(适用CPU架构:x86_64.arm64.mips) 银 ...
- “国产”操作系统UOS(Deepin V20专业版)
[推荐]2019 Java 开发者跳槽指南.pdf(吐血整理) >>> deepin大家应该不陌生了 deepin官方也放出了v20专业版的预览视频. 这个UOS呢就是deepin ...
- Workstation安装中标麒麟操作系统V7
系统环境: worksation15.5 中标麒麟高级服务器操作系统软件V7.0U6 1.新建虚拟机 2.点击下一步 3.选择系统映像文件 4.选择操作系统类型,中标麒麟是基于redhat版本 5.配 ...
- deepin efi 启动u盘_如何安装Deepin国产操作系统?只需一个U盘就够了,超简单
2019年快结束了,距离微软对Win7系统停止服务的日期也是越来越近了.与此同时,人们对国产操作系统的热度和期望值也是越来越高.在诸多国产操作系统中,Deepin系统是目前知名度最高的一个,而且无论在 ...
- 如何用u盘安装深度linux系统,如何安装Deepin国产操作系统?只需一个U盘就够了,超简单...
2019年快结束了,距离微软对Win7系统停止服务的日期也是越来越近了.与此同时,人们对国产操作系统的热度和期望值也是越来越高.在诸多国产操作系统中,Deepin系统是目前知名度最高的一个,而且无论在 ...
最新文章
- ActiveMQ入门教程(二) - ActiveMQ的安装
- 关于IE6,奇数宽高的BUG
- 【数学建模】MATLAB应用实战系列(九十三)-岭回归应用案例(附MATLAB和Python代码)
- Ubuntu 16.04下Caffe-SSD的应用——常见训练时报错总结
- 批处理命令 / 延迟环境变量扩展
- adb linux 权限更改,使用命令chmod修改android文件权限
- oracle ebs hr模块表,oracle ebs常用表结构及分类模块.doc
- cxf javax.xml.parsers.DocumentBuilderFactory.setFeature(Ljava/lang/String;Z)
- python图形代码怎么写_【Python3-API】定制化图像接口示例代码
- 手机可以使用鸿蒙系统,【图片】华为鸿蒙系统的厉害之处在于 你可能非用不可
!【手机吧】_百度贴吧...
- 编程语言对比 命名空间
- 【Alpha】第八次Scrum meeting
- linux grep正则表达式,linux-正则表达式与grep命令
- 一个90后草根站长的内心独白
- java 出路 xls_java读取excel之xlsl超大文件
- 点燃我温暖你 李峋 两种爱心代码
- 【bzoj4826】[Hnoi2017]影魔
- 【SuperMap】SuperMap.Geometry转GeoJSON
- python实现企业微信定时发送文本消息!下班自动提交,老板直夸我敬业!
- vs的快捷键——注释/取消注释
热门文章
- ROC曲线和AUC指标
- arm linux ifconfig 什么都,[root@FriendlyARM /]# ifconfig eth1 up
- 连续六个季度实现盈利改善,达达集团内外双重确定性凸显
- Vue2---全局事件总线
- [Python]校园网(网页认证)开机/断网自动连接
- java 外卖_java实现外卖订餐系统
- 操作系统:虚拟存储器 练习题(带有答案和解析)
- 2023美国大学生数学建模竞赛(春季赛)选题建议
- ssm 上传图片到mysql_MySQL+SSM+Ajax上传图片问题的分析(图)
- 基于Python下Tkinter实现学生选课管理系统