如何在Linux下快速安装MapTiler
研究背景:
实际项目用到MapTiler时,为了适应项目不同场景需求,需要测试MapTiler在linux下切图速度,这时就涉及到到MapTiler在Linux下安装的问题,从 MapTiler公司拿到的在linux30天试用期的是一个rpm文件,单纯的利用rpm –ivh命令安装会发现它依赖了gdal,qtwebkit 等包,也就是说你需要先安装这些依赖包。当你去安装它们的时候你又会发现它们又依赖了其它包,这样就会陷入无止尽的安装,所以写这篇博客的意义是让在不熟悉linux但是得在linux下面安装软件的人少走弯路,同时记录自己的成长。
在说安装步骤之前,先谈几个概念,方便弄清每一步的含义:
1:Maptiler是国外的一个可以帮助我们快速发布地图服务的软件,它的切图速度以及切图质量相对与ArcGis来说好一点。
2:yum是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
3:EPEL 是yum的一个软件源,里面包含了许多基本源里没有的软件。
安装步骤详解:
/*注意:所有安装都是基于Linux RedHat 7.0,安装步骤中的配置请自行找到自己的版本包 */
/*安装过程中可能会提示没有对应权限,我们可以在每个执行的命令前加上sudo 然后在提示下输入管理员密码即可*/
1:替换掉自带的yum服务(yum服务是要付费的,替换后可以随便用,不用付费,在替换之前可以先试试自己的yum服务 看是否可用,可用可跳过本步骤)
打开linux命令终端 按步骤输入以下命令
《1》rpm –ivh http://mirrors.163.com/CentOS/7/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm 《2》rpm -ivh http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
《3》rpm -ivh http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-118.el7.centos.noarch.rpm http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-24.el7.noarch.rpm (注意:第三步安装了两个rpm包) 《4》cd /etc/yum.repos.d/
《5》wget wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
《6》sed -i "s/\$releasever/7/" CentOS7-Base-163.repo
《7》yum makecache
2:通过刚刚替换的yum添加EPEL仓库
yum -y install epel-release
3:添加maptiler的依赖包gdal和qtwebkit
yum - y install gdal (本依赖包加载速度略慢)
yum - y install qtwebkit
4:安装maptiler的rpm包
rpm -ivh (maptiler对应rpm名称)
至此 MapTiler成功安装了。
总结:
在摸索中走了很多弯路,中途还用中式英语给MapTiler公司写了封邮件,不管怎样,还是很高兴最后试验成功了。在技术世界,我还是一只菜鸟,不敢谈多熟练什么什么技术,但是在技术的道路上我会坚持初心,砥砺前行!
由于我薄弱的知识,博客有写得不对的地方欢迎指出,大家一起探讨,共同进步!
如何在Linux下快速安装MapTiler的更多相关文章
- linux下快速安装jenkins
Linux下快速安装Jenkins 建议使用 FileZilla 工具简化以下步骤中移动.环境变量配置等步骤. 1 软件下载 l Java:jdk-7u17-linux-x64.tar.g ...
- linux下快速安装chrome
linux下安装chrome 1.按下 Ctrl + Alt + t 键盘组合键,启动终端 2.在终端中,输入以下命令: (将下载源加入到系统的源列表.命令的反馈结果如图.如果返回“地址解析错误”等信 ...
- linux下快速安装emacs方法
背景 在公司工作的时候经常需要在很多服务器之间切换,而公司的服务器上一般都没emacs,因此总结一下快速安装emacs的方法. 最简单的是直接使用yum安装,但是有两个问题,一个是有的生产服务器直接没 ...
- Linux下快速安装Mysql及使用
1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | grep mysql* 查看有没有安装包: yum list mysql* 安装mysql客户端: ...
- 如何在Linux下Redis安装
转载出于:http://blog.csdn.net/jiangguilong2000/article/details/8114740 redis作为NoSQL数据库的一种应用,响应速度和命中率上还是比 ...
- linux下快速安装python3.xx
安装python3之前的准备工作: 当前环境是centos操作系统[已经安装了gcc++],在安装前需要安装zlib-devel包: yum install zlib-devel yum instal ...
- Linux下快速安装Python3和pip
如果本机安装了python2,尽量不要管他,使用python3运行python脚本就好,因为可能有程序依赖目前的python2环境, 比如yum!!!!! 不要动现有的python2环境! 一.安装p ...
- linux下快速安装pyenv管理多版本python
起因 一直服务器python项目都是放docker跑,这次为了测试,不得不在宿主机跑,就必须安装python3.7,但是ubuntu16.04下有点麻烦 尝试 源码安装,懒,算了,也不想污染服务器环境 ...
- 如何在Linux下安装Tomcat
上篇文章写到了Linux下安装JDK1.8,这篇文章详细阐述一下 如何在Linux下安装Tomcat!!!有啥问题可以留言,博主每天都会看博客的. 准备步骤和方法和以前一样,博主用的工具是XShell ...
随机推荐
- $_FILES详解
<form enctype="multipart/form-data" action="upload.php" method="post&quo ...
- STM32F103RC进入串口3接收中断产生HardFault_Hander问题解决!
最近在以前的项目上添加串口3通讯后,程序一进入接收中断后就产生HardFault_Hander.串口3发送数据一切正常,当打开串口3接收功能时,程序就处于HardFault_Hander状态,而导致死 ...
- 【一】Swift 3.0 新浪微博项目实战 -整体框架搭建
最近要接手swift,所以找了个视频跟着做一下实战项目,在此记录一下过程和心得 框架搭建和目录拆分 关键词:MVVM 架构,桥接文件 桥接文件用于引入OC的头文件,Swift就可以正常使用(宏除外). ...
- webStorm在Node.js平台下服务器配置及Express配置
************************************** 本博客从此篇开始,将从零基础开始逐渐深入地向各位博友分享node.js学习经验,如有需要请通过新浪微博@牙疼格尔联系博主, ...
- 获取JVM的dump文件
获取JVM的dump文件的两种方式 1. JVM启动时增加两个参数: #出现 OOME 时生成堆 dump: -XX:+HeapDumpOnOutOfMemoryError #生成堆文件地址: -XX ...
- Java 枚举详解
为什么要用枚举 在博客系统中,一篇文章有且可能有这几种状态, 数据库中article文章表中state字段存储数值,表示其状态: 0(已发表Published) 1(草稿Draft) 2(撤回撤回(D ...
- JS——控制标记的样式
1.定义一个div,宽度为100px,高度为100px,背景色为粉色. 定义一个事件,鼠标移入时背景色变为蓝色,宽度变为200px. 定义一个事件,鼠标移出时背景色变为红色. html文件: < ...
- IOS开发创建开发证书及发布App应用(七)——在iTunes创建填写应用基本信息
7.在iTunes创建填写应用基本信息 依旧打开苹果的开发者网站 https://developer.apple.com/ 点击Member,如下图 (注意,下面的图示是登录之后的) 点击iTunes ...
- Tcl与Design Compiler (十)——其他的时序约束选项(一)
本文属于原创手打(有参考文献),如果有错,欢迎留言更正:此外,转载请标明出处 http://www.cnblogs.com/IClearner/ ,作者:IC_learner 之前讲了基本的时序路径 ...
- SQL Server特殊用法笔记
1. MERGE用法:关联两表,有则改,无则加 SQL语句: create table #AAA(id int,A int,AA int,AAA int,B int) create table #BB ...