今天在安装Redis和Python上遇到了些问题,解决后记录下来。

环境:LinuxMint 18.3

安装redis

sudo wget http://download.redis.io/releases/redis-4.0.8.tar.gz
sudo tar -zxf redis-4.0.8.tar.gz -C /usr/redis/
cd /usr/redis/redis-4.0.8
sudo make

我的安装目录是/usr/redis。

在make的过程中遇到了下列问题:

net.c:36:23: fatal error: sys/types.h: No such file or directory
...
adlist.c:32:20: fatal error: stdlib.h: No such file or directory

原因是缺少文件,执行以下命令后再次make解决:

sudo apt-get install libc6-dev

参考:http://blog.csdn.net/yygydjkthh/article/details/41787049

zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory

原因是libc不是默认的分配器,在make后添加参数解决:

sudo make MALLOC=libc

参考:http://blog.csdn.net/fygkchina/article/details/51006976

Python版本切换

Mint 18.3中内置了python的两个版本:2.7和3.5,当使用python命令时默认使用2.7,因个人需求要使用3,找到一个比较好的不用删除python2的方法:

注意:只适用于Debian系的Linux

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 9
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 10

/usr/bin/python2.7和/usr/bin/python3.5是本地python的安装目录,后面的9和10是优先级,如果优先使用3则将优先级设为比2高的数值即可。

再次查看python版本

python --version
Python 3.5.2

注意:只适用于Debian系的Linux

如果要切换回2也很简单,执行命令

sudo update-alternatives --config python

后选择相应的选项即可切换成功

$ sudo update-alternatives --config python
有 2 个候选项可用于替换 python (提供 /usr/bin/python)。 选择 路径 优先级 状态
------------------------------------------------------------
* 0 /usr/bin/python3.5 10 自动模式
1 /usr/bin/python2.7 9 手动模式
2 /usr/bin/python3.5 10 手动模式 要维持当前值[*]请按<回车键>,或者键入选择的编号:1
update-alternatives: 使用 /usr/bin/python2.7 来在手动模式中提供 /usr/bin/python (python)
$ python --version
Python 2.7.12

更多解决方案:http://blog.csdn.net/justdoithai/article/details/70310095

LinuxMint上安装redis和python遇到的一些问题的更多相关文章

  1. Redis简介以及如何在Windows上安装Redis

    Redis简介 Redis是一个速度非常快的非关系型内存数据库. Redis提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erla ...

  2. 在VMware的Linux系统上安装Redis

    在VMware的Linux系统上安装Redis 具体过程如下: 下载,解压和编译: 在执行make的时候报错,具体报错信息如下: zmalloc.o: In function `zmalloc_use ...

  3. linux上安装redis的踩坑过程2

    昨天在linux上安装redis后马上发现了其它问题,服务器很卡,cpu使用率上升,top命令查看下,原来有恶意程序在挖矿,此程序入侵了很多redis服务器,马上用kill杀掉它 然后开始一些安全策略 ...

  4. 在windows上安装redis并设置密码

    在windows上安装redis Redis是一个开源,先进的key-value存储,并用于构建高性能,可扩展的Web应用程序的完美解决方案. Redis从它的许多竞争继承来的三个主要特点: Redi ...

  5. win上安装Redis并将其设置为服务

    win上安装Redis并将其设置为服务 redis下载地址:https://redis.io/ 或者在下面的地址下载 https://github.com/zhangxy1035/redisDownl ...

  6. 在 CentOS 7上安装并配置 Python 3.6 环境

    前言 按照此方法安装保证以下报错什么的统统都没有! 基础环境 系统:centos7.4 软件:python3 Retrying (Retry(total=0, connect=None, read=N ...

  7. Ubantu上安装Redis

    Ubantu上安装Redis:Redis(Remote Dictionary Server):远程字典服务器,简称REDIS;Redis数据库产品用C语言编写而成,开源.少量数据存储.高速读写访问,是 ...

  8. windows上安装Anaconda和python的教程详解

    一提到数字图像处理编程,可能大多数人就会想到matlab,但matlab也有自身的缺点: 1.不开源,价格贵 2.软件容量大.一般3G以上,高版本甚至达5G以上. 3.只能做研究,不易转化成软件. 因 ...

  9. ubuntu上安装redis和配置远程访问

    ubuntu上安装redis和配置远程访问 安装redis: 下载安装包: wget http://download.redis.io/releases/redis-4.0.1.tar.gz 解压: ...

随机推荐

  1. 使用ML.NET + Azure DevOps + Azure Container Instances打造机器学习生产化

    介绍 Azure DevOps,以前称为Visual Studio Team Services(VSTS),可帮助个人和组织更快地规划,协作和发布产品.其中一项值得注意的服务是Azure Pipeli ...

  2. Docker安装MySQL并配置my.cnf

    1.创建一个临时的mysql,以便复制出my.cnf等数据 $ docker run --restart=always -d -v /opt/data/mysql/:/var/lib/mysql -p ...

  3. Jenkins结合.net平台综合应用之通过SSH方式拉取代码

    上一节我们讲解了如何Jenkins如何通过轮训来监听git仓库变化然后拉取最新代码,上一节中我们使用的是https方式,然后正式环境中企业更倾向使用ssh方式.这里我们讲解一下如何通在Jenkins中 ...

  4. SpringBoot系列——Spring-Data-JPA

    前言 jpa是ORM映射框架,更多详情,请戳:apring-data-jpa官网:http://spring.io/projects/spring-data-jpa,以及一篇优秀的博客:https:/ ...

  5. NLP入门(六)pyltp的介绍与使用

    pyltp的简介   语言技术平台(LTP)经过哈工大社会计算与信息检索研究中心 11 年的持续研发和推广, 是国内外最具影响力的中文处理基础平台.它提供的功能包括中文分词.词性标注.命名实体识别.依 ...

  6. .Net语言 APP开发平台——Smobiler学习日志:在手机应用中开发蛛网表格

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 样式一 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的”Sm ...

  7. MEF 基础简介 一

    前言 小编菜鸟级别的程序员最近感慨颇多,经历了三五春秋深知程序路途遥远而我沧海一粟看不到的尽头到不了的终点何处是我停留的驿站.说了段废话下面进入正题吧! 什么是MEF? MEF:全称Managed E ...

  8. JavaScript 基础结构

    注释      代码注释可以使用//或者/* */ // 这是一个单行注释 /* * 这是 * 一个 * 多行 * 注释 */ 变量      变量用于存储数据,在同一作用域内变量不得重名,定义语法: ...

  9. Android Material Design控件使用(三)——CardView 卡片布局和SnackBar使用

    cardview 预览图 常用属性 属性名 说明 cardBackgroundColor 设置背景颜色 cardCornerRadius 设置圆角大小 cardElevation 设置z轴的阴影 ca ...

  10. 修改SublimeText3插件Emmet生成HTML中lang属性的默认值

    打开Preferences → Package Settings → Emmet → Settings-User,输入如下代码并保存: { "snippets": { " ...