本人也是想学学C++编程,用了3个周末的时间在虚拟机上搞了一个开发环境。先说说心得。
1、Centos7,centos可以安装的软件实在太少,而且通过yum安装的包版本太老(导致各种不兼容,需要自己下源码编码、安装),社区的文章也太少,所以推荐像我这样的新手使用ubuntu。软件直接apt安装就行了,省心省力。
2、参考了很多文章,自己都记不清楚了,在这里说声谢谢。
3、正文所有安装报错的情况都是确实 支持包或者支持包的版本太低,自己手动安装、升级一下就行了(可惜自己么有记录下来,自己看报错,baidu来修正吧)。
=============================================================================以下正文========================================================================================
安装perl支持
yum -y groupinstall perl*
#安装gcc
yum -y install gcc
#安装g++
yum -y install gcc-c++
yum -y install libstdc++-devel
#yum -y install cmake3
#安装其它所需的包
安装一个老包ncurses,VIM会用到
yum -y install ncurses-devel
或者 sudo apt install libncurses5-dev
安装m4
tar -xzvf m4-1.4.13.tar.gz && cd m4-1.4.13 && ./configure -prefix=/usr/local && make && make install
安装autoconf
tar -xzvf autoconf-2.65.tar.gz && cd autoconf-2.65 && ./configure -prefix=/usr/local && make && make install
安装automake
tar xzvf automake-1.11.tar.gz && cd automake-1.11 && ./configure -prefix=/usr/local && make && make install
安装libtool
tar xzvf libtool-2.2.6b.tar.gz && cd libtool-2.2.6b && ./configure -prefix=/usr/local && make && make install
安装Python2 开发包
yum install -y python-devel
tar xvf Python-3.6.0a1.tar.xz && cd Python-3.6.0a1 && ./configure -prefix=/usr/local && make && make install
安装git
sudo yum -y install git
安装svn
yum install -y subversion
#如果有需要安装python3,(VIM的YCM需要python支持,需要版本python2.6+ 或者 3,选择一个)
tar -xvJf Python-3.6.2.tar.xz
cd Python-3.6.2
./configure prefix=/usr/local/python3
make && make install
安装VIM8.0
tar -xvf vim-8.0.tar.bz2 && cd vim80 && cd src
make distclean
./configure --prefix=/opt/vim8 --enable-fail-if-missing --enable-pythoninterp --with-python-config-dir=/usr/lib64/python2.7/config --enable-multibyte --enable-fontset --with-features=huge
make && make install
执行vim如果没有找到则把vim复制到/usr/bin目录下
cp /usr/local/bin/vim /usr/bin/vim
安装vim plug,用来管理VIM插件
mkdir ~/.vim/autoload/ && cd ~/.vim/autoload/ && wget https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
将要安装的插件写入~/.vimrc(没有就自己创建一个空文件),这里以ycm插件为例:
" Specify a directory for plugins
call plug#begin('~/.vim/plugged')
"以安装ycm插件为例
Plug 'Valloric/YouCompleteMe'
" Initialize plugin system
call plug#end()
vim ~/.vimrc
切换到命令行模式,依次输入
PlugStatus
PlugInstall
就可以安装插件了:(插件会安装到~/.vim/plugged目录下,比如YCM就会安装到~/.vim/plugged/YouCompleteMe)PlugInstall
使用vim plug可以方便的管理插件
查看插件类型:
:PlugStatus
安装插件:
:PlugInstall
更新插件::PlugUpdate
vim-plug本身更新::PlugUpgrade
:PlugStatus
安装插件:
:PlugInstall
更新插件::PlugUpdate
vim-plug本身更新::PlugUpgrade
:PlugInstall 报错:
Peer reports incompatible or unsupported protocol version.
升级基本包:
sudo yum update nss curl # nss为名称解析和认证服务 curl为网络请求库
==================由于YouCompleteMe需要安装(最复杂的插件,安装完它其他插件安装就很简单了,直接:PlugInstall就可以完成了)=====以下是安装YCM的过程=======================
#安装cmake3
yum -y install epel-release
yum -y install cmake3
#建立链接
ln -sf /usr/bin/ccmake3 /usr/local/bin/cmake
#下载最新的 clang_llvm二进制安装包(我只找到了Centos6的3.8版本),解压并改名 clang_llvm_3_8
tar xvf clang+llvm-3.8.0-linux-x86_64-centos6.tar.xz clang_llvm_3_8
#移动到bin
cp -r /usr/clang_llvm_3_8/include/* /usr/include
&& cp -r /usr/clang_llvm_3_8/lib/* /usr/lib
&& cp -r /usr/clang_llvm_3_8/bin/* /usr/bin
&& cp -r /usr/clang_llvm_3_8/libexec/* /usr/libexec
&& cp -r /usr/clang_llvm_3_8/share/* /usr/share
#编译YCM
mkdir ~/.ycm_build
cd ~/.ycm_build
cmake -G "Unix Makefiles" -DUSE_SYSTEM_BOOST=ON -DUSE_SYSTEM_LIBCLANG=ON . ~/.vim/plugged/YouCompleteMe/third_party/ycmd/cpp
#指定clang版本,也可以不制定,libclang.so文件,按自己实际情况写
#cmake -G "Unix Makefiles" -DUSE_SYSTEM_BOOST=ON -DEXTERNAL_LIBCLANG_PATH=/usr/lib64/llvm/libclang.so . ~/.vim/plugged/YouCompleteMe/third_party/ycmd/cpp
make
cp -f ~/.vim/plugged/YouCompleteMe/third_party/ycmd/examples/.ycm_extra_conf.py ~/.vim/
#启动成功
=================================PS==============================================
clang --version报错
clang: /lib64/libc.so.6: version `GLIBC_2.15' not found (required by clang)
clang: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by clang)
clang: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by clang)
clang: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by clang)
这个是因为libstdc++版本过低,可以参考本文章
这是.vimrc vim-plug插件管理的博文
https://www.cnblogs.com/mikeguan/p/7791522.html
=======================================================================================
一下是本机安装后的效果图: