学以致用十三-----Centos7.2+python3+YouCompleteMe成功历程
历经几天的摸索,趟过几趟坑之后,终于完成YouCompleteMe的安装配置。
今天同样是个不能忘记的日子,国耻日,勿忘国耻。(9.18)
服务器安装好,基本配置配置好后,开始安装。
=========================================================================================================================
一、检查服务器环境
1.1、uname -a

1.2、 cat /etc/redhat-release

1.3、 python -V

1.4、vi --version

============================================================================================================================
二、安装软件
2.1、 yum 下载依赖包
yum -y install libXt-devel gtk2-devel
yum -y install python-devel ruby ruby-devel perl perl-devel perl-ExtUtils-Embed
yum -y install ncurses-devel zlib-devel bzip2-devel openssl-devel sqlite-devel readline-devel tk-devel
yum -y install gcc gcc-c++ make automake
yum -y install ctags
yum -y install yum-utils
yum-builddep -y llvm clang
yum -y install epel-release
yum install python-pip
pip install distribute
2.2 下载软件包
2.2.1 、cmake 3.1.2
wget -c https://cmake.org/files/v3.12/cmake-3.12.2.tar.gz
2.2.2、 vim8.1
wget -c ftp://ftp.vim.org/pub/vim/unix/vim-8.1.tar.bz2 或者
git clone https://github.com/vim/vim.git
2.2.3 、 python 3.6.2
wget -c https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
==============================================================================================================================================================
三、安装软件
3.1 安装cmake3.1.2
tar zxvf cmake-3.12.2.tar.gz
cd cmake-3.12.2
./bootstrap
gmake -j3 (j3表示开3个线程,具体情况可自己调整)
make install
------------------------------------------------------------------------------------------
3.2 安装python3.6.2
xz -d Python-3.6.2.tar.xz
tar xvf Python-3.6.2.tar
cd Python-3.6.2
./configure --enable-shared --prefix=/usr/local/python
make;make install
备份 python2.7的软连接
mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/python/bin/python3 /usr/bin/python
ln -s /usr/local/python/bin/pip3 /usr/bin/pip3
查看版本
python -V
报错

解决方法:
cp libpython3.6m.so.1.0 /usr/lib
cp libpython3.6m.so.1.0 /usr/lib64
cp libpython3.6m.so.1.0 /usr/local/lib
cp libpython3.6m.so.1.0 /usr/local/lib64

更改配置文件
vi /usr/bin/yum --------------------最开头的路径里更改python为python2
vi /usr/libexec/urlgrabber-ext-down --------同上
----------------------------------------------------------------------------------------------------------------------------------------------------
3.3 安装vim8.1
本篇vim8 用git安装
安装之前,卸载系统自带的vi
yum remove vi

git clone https://github.com/vim/vim.git
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
如果从vim官网下载的安装包

需要先下载 bzip2
yum -y install bzip2

bunzip2 vim-8.1.tar.bz2 更改文件压缩方式

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开始安装
cd /soft/vim/src
./configure --with-features=huge --enable-python3interp --enable-multibyte --enable-cscope --with-python3-config-dir=/usr/local/python/lib/python3.6/config-3.6m-x86_64-linux-gnu --prefix=/usr/local/vim8
make
make install
ln -s /usr/local/vim8/bin/vim /usr/bin/vim
安装完毕后,查看vim 版本信息
vim --version

可以看到vim版本升级到81,同时支持的python 为 -python +python3
===============================================================================================================================================================
四 安装插件
4.1 安装 vbundle
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
在根目录下创建 .vimrc文件
cd
touch .vimrc
编辑 .vimrc
先填写以下内容

注意要加上
source $VIMRUNTIME/vimrc_example.vim
网上很多步骤这里没有加上这句,打开vim会报错
再次打开vim
vim
:pluginList

可以看到插件列表
安装插件
:PluginInstall

安装成功后,会显示DONE!
--------------------------------------------------------------------------------------------------------------------------------
4.1 下载 YouCompleteMe
这里我采用git下载的方式安装,没有通过在Plugin列表里安装
git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMe
下载后
在 .vimrc里加上

然后再打开 vim 你会发现报错啦

这就是我之前的日志里,遇到的坑
别着急,先把YouCompleteMe安装完
4.2 安装YouCompleteMe
cd .vim/bundle/YouCompleteMe/
./install.sh --clang-complete
会提示错误

根据提示,输入
git submodule update --init --recursive
等待git去下载其他相关文件
安装完成
最后一个安装完成

再次执行 ./install.sh --clang-complete

这里要看网络是不是给力了。。。。。根据报错提示

下载的
https://dl.bintray.com/micbou/libclang/libclang-6.0.0-x86_64-linux-gnu-ubuntu-14.04.tar.bz2
会放在
/root/.vim/bundle/YouCompleteMe/third_party/ycmd/clang_archives 目录下

我试着从其他服务器上把这个文件拷贝过来

把文件放入相应的目录,再次执行,可以正常安装了,并安装完成

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
五、解决vim报错问题
只需要重新安装 vim8,但是重新安装vim8需要更改configure参数
./configure --with-features=huge --enable-python3interp --enable-pythoninterp --with-python-config-dir=/usr/lib64/python2.7/config --enable-rubyinterp --with-python3-config-dir=/usr/local/python/lib/python3.6/config-3.6m-x86_64-linux-gnu/ --enable-multibyte --enable-cscope --prefix=/usr/local/vim8

重点是 --enable-pythoninterp --with-python-config-dir=/usr/lib64/python2.7/config 要让vim也支持python2.7
然后make; make install之后
vim --version

此时可以看到 支持的python是 +python /dyn +python3 /dyn
动态支持了。
再次打开vim 会发现不再报错了
编辑python文件 会发现自动补全的功能实现了。

六、编辑.vimrc 打造适合自己习惯的vim编辑器。
网上有很多这样的模板,可按照自己的需求来编辑。
至于我之前折腾的安装 libclang,完全是不清楚vim为什么报错,youcompleteme不正常运行时瞎折腾的。
安装libclang是为了补全C家族的语言。我不会C,自然就不需要安装了。要安装的话,可参考之前写的日志。
至此youcomplete告一段落。折腾了快一个礼拜,总算安装成功。
主要是vim的报错困扰了我好长时间,而且没有错误提示,通过不断的摸索总结出来。
面对困难不要放弃,就算最后没解决,但你明白了过程,也是有收获的。
学以致用十三-----Centos7.2+python3+YouCompleteMe成功历程的更多相关文章
- 学以致用十一-----centos7.2+python3+YouCompleteMe走过的坑
目的,安装YouCompleteMe 插件 参考的资料 https://blog.csdn.net/zs376957686/article/details/77833953 https://www.c ...
- 学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe
趟过了之前的坑后,再来安装YouCompleteMe 一.安装依赖包 yum install libXt-devel gtk2-devel yum -y install python-devel ru ...
- 学以致用六---Centos7.2+python3.6.2+django2.1.1 --搭建一个网站
目的,创建django project,开始django web之旅 一.创建一个project 在opt目录下创建一个project [root@gxc opt]# django-amdin. ...
- 学以致用七---Centos7.2+python3.6.2+django2.1.1 --搭建一个网站(补充)
补充:上一节出现的报错提示 可在settings.py 里,改成 ‘*’ ,这样所有的主机都可以访问了. 打开网页 注意红色框出来的 hello 是和 urls.py里的hello对应 urls.p ...
- CentOS7 安装Python3,开发SocketIO 客户端
CentOS7安装Python3,开发SocketIO 客户端 参考:https://blog.csdn.net/lovefengruoqing/article/details/79284573 步骤 ...
- CentOS7+ anaconda3 + Python-3.6 + tensorflow-cpu-1.5安装和配置
CentOS7+ anaconda3 + Python-3.6 + tensorflow-cpu-1.5安装和配置 ========================================== ...
- centos7下python3与python2共存并且开启py3虚拟环境
因为下载视频需要用到python3环境,今天在我的win上安装下载工具死活安装不上去,在大盘鸡上一下就安装成功了...可能在win上不兼容吧...无奈只能在大盘鸡上进行折腾了,顺便几个笔记 由于大盘鸡 ...
- Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim
一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...
- CentOS7 安装Python3.6.8
CentOS7 安装Python3.6.8 1. 安装依赖环境 yum -y groupinstall "Development tools" yum -y install zli ...
随机推荐
- Mac下GitHub以及GitHub Desktop使用实战
Hub是一个面向开源及私有软件项目的托管平台.开源代码库以及版本控制系统,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub.通常在Windows下使用GitHub的教程是非常多的, ...
- Oracle to_char函数的使用方法
Oracle to_char函数的功能是将数值型或者日期型转化为字符型,下面就为您详细介绍Oracle to_char函数的使用,希望对您能有所帮助. Postgres 格式化函数提供一套有效的工具用 ...
- iserver-数据库型数据源导入后原dataset名称和数据库表名不一致的问题
一.发现问题 系统中发现某个房屋的分层平面图查询不到 1.去sqlserver空间库中查询发现这个表‘房间_100200T001D001’不存在 2.在工作空间中查询发现是有这个数据集的 二.解决问题 ...
- PAT 1028 人口普查(20)(STL-set+思路+测试点分析)
1028 人口普查(20)(20 分) 某城镇进行人口普查,得到了全体居民的生日.现请你写个程序,找出镇上最年长和最年轻的人. 这里确保每个输入的日期都是合法的,但不一定是合理的--假设已知镇上没有超 ...
- BZOJ1899或洛谷2577 [ZJOI2005]午餐
BZOJ原题链接 洛谷原题链接 解决这题得先想到一个贪心:吃饭慢的先排队. 并不会证明(感觉显然 设\(f[i][j][k]\)表示已经排好了前\(i\)人,第一个队伍需要花费的打饭时间为\(j\), ...
- POJ2349 Arctic Network
原题链接 先随便找一棵最小生成树,然后贪心的从大到小选择边,使其没有贡献. 显然固定生成树最长边的一个端点安装卫星频道后,从大到小选择边的一个端点作为卫星频道即可将该边的贡献去除. 所以最后的答案就是 ...
- POJ3662或洛谷1948 Telephone Lines
二分答案+单源最短路 POJ原题链接 洛谷原题链接 显然可以二分答案,检验\(mid\)可以使用最短路来解决. 将大于\(mid\)的边看成长度为\(1\)的边,说明要使用免费升级服务,否则长度为\( ...
- VisualStudio使用技巧
控制台工程去除黑框 刚学习OpenGL,绘制图形的时候,如果不进行设置,运行的时候会先出现黑窗口再出现Windows窗口.其实要去除控制台窗口非常简单,只需要修改工程设置,把子系统改成Windows, ...
- Tinyos学习笔记(三)
读取Telosb内部传感器数据,并在计算机上显示. senseC.nc代码如下: #include "Timer.h" #include "sense.h" # ...
- Increase PHP script execution time with Nginx
If you have a large WordPress setup or a server with limited resources, then you will often see the ...