學以致用十三-----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的報錯困擾了我好長時間,而且沒有錯誤提示,通過不斷的摸索總結出來。

面對困難不要放棄,就算最后沒解決,但你明白了過程,也是有收獲的。

?

轉載于:https://www.cnblogs.com/liongong/p/9671947.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/450665.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/450665.shtml
英文地址,請注明出處:http://en.pswp.cn/news/450665.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VC畫圖用到的主要方法

1。鼠標落下,記錄鼠標的起始位置 void CMyEasyDrawView::OnLButtonDown(UINT nFlags, CPoint point) { // TODO: 在此添加消息處理程序代碼和/或調用默認值 //graph->m_nTypedlg-> m_bStartDraw true; m_PtPress m_PtLast point; CView::OnLButtonDown…

【最新版】Java學習路線(含B站口碑推薦視頻鏈接)

文章目錄關于如何自學一、計算機網絡二、數據結構與算法三、操作系統四、計算機組成原理五、編譯原理六、設計模式七、MySQL八、實操工具九、JAVA并發與JVM十、Redis十一、Linux十二、Java路線學習尚硅谷黑馬程序員動力節點狂神說十三、Java基礎十四、JavaWeb十五、框架十六、微…

記錄no static method cannot be reference

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 報錯如題: no static method cannot be reference 我一直以為是在靜態方法中調用了非靜態方法,實際上只是我在注…

文件存儲權限

Android 6.0及以上&#xff0c;需要動態申請權限&#xff1a; Manifest.permission.READ_EXTERNAL_STORAGE Manifest.permission.WRITE_EXTERNAL_STORAGE <uses-permission-sdk-23 android:name"android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permis…

從工具的奴隸到工具的主人

摘要&#xff1a;我們每個人都是工具的奴隸。隨著我們的學習&#xff0c;我們不斷的加深自己對工具的認識&#xff0c;從而從它們里面解脫出來。現在我就來說一下我作為各種工具的奴隸&#xff0c;以及逐漸擺脫它們的思想控制的歷史吧。 當我高中畢業進入大學計算機系的時候&am…

記錄A component required a bean named ‘studentService‘ that could not be found.

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 報錯如題&#xff1a; A component required a bean named studentService that could not be found. 出問題的代碼行&#xff1a; &l…

Java---利用程序實現在控制臺聊天

一.普通版&#xff08;不能實現隨意輸入&#xff09; 電腦A(服務器端) package day; import java.net.ServerSocket; import java.net.Socket; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner;public class Mysever {public static void…

16.看板方法——三類改進機會筆記

00.三種常見的模型和它們一些變種&#xff1a;約束理論及其主要理念&#xff1b;還有聚焦于分析和減少變異性的模型及其變種等。 01.五步聚焦法 *a.識別約束 *b.作出決定&#xff0c;以最大化利用約束 *c.使系統中的其余一切部分都服從于b中做出決定 *d.突破約束 *e.避免惰性&a…

C/C++的64位整型

在C/C中&#xff0c;64為整型一直是一種沒有確定規范的數據類型。現今主流的編譯器中&#xff0c;對64為整型的支持也是標準不一&#xff0c;形態各異。一般來說&#xff0c;64位整型的定義方式有long long和__int64兩種(VC還支持_int64)&#xff0c;而輸出到標準輸出方式有pri…

記錄 Duplicate spring bean id dubbo

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 啟動工程 報錯如題&#xff1a; Duplicate spring bean id dubbo &#xff0c;意思是id 重復。 原因是我在加載配置文件時加載了兩個…

1.KafKa-介紹

轉載于:https://www.cnblogs.com/v-lcc/p/9674975.html

關于日志的123

寫在前面&#xff1a; 關于日志其實有很多想說的&#xff0c;不過將自己整理的文檔轉化為Blog還是比較花時間的&#xff0c;偶有疏漏&#xff0c;請多包涵。 本篇文章所講均只止于Java。 日志的作用&#xff1a; 1.定位問題&#xff0c;對于一個系統而言&#xff0c;總是會有些…

研究顯示每天工作超8小時得心臟病概率增加80%,生命很重要,工作不要那個累。

每天工作超過8小時的人患心臟病的風險最高可增加80%(資料圖) 據英國《每日郵報》9月12日報道&#xff0c;芬蘭職業保健研究所的科學家們近日進行了一項研究&#xff0c;他們發現每天工作超過8小時的人患心臟病的風險最高可增加80%。 研究人員表示&#xff0c;長時間的工作是許多…

SVN介紹

1.SVN介紹SVN是一個跨平臺的開源的版本控制系統&#xff0c;svn版本管理工具管理著隨時間改變的各種數據&#xff0c;這些數據放置在一個中央檔案庫&#xff08;repository&#xff09;中&#xff0c;svn會備份并記錄每個文件每一次的修改、更新、變動。這樣可以把任意一個時間…

記錄 Annotation processing is not supported for module cycles.

報錯&#xff1a;Error:java: Annotation processing is not supported for module cycles. Please ensure that all modules from cycle [A,B] are excluded from annotation processing 我是想啟動兩個 maven工程&#xff0c;相互作為服務提供方和消費方&#xff0c;于是在p…

沉淀再出發:Spring的架構理解

沉淀再出發:Spring的架構理解 一、前言 在Spring之前使用的EJB框架太龐大和重量級了&#xff0c;開發成本很高&#xff0c;由此spring應運而生。關于Spring&#xff0c;學過java的人基本上都會慢慢接觸到&#xff0c;并且在面試的時候也是經常遇到的&#xff0c;因為這個技術極…

用Python進行機器學習所需環境的配置(轉)

源&#xff1a;用Python進行機器學習所需環境的配置

成功創業者所需的能力

1. 富有遠見&#xff0c;樂在其中。 如果你能很好地預見自己的公司所在領域在很多年后的樣子&#xff0c;這能保證你在該領域取得長久的發展。很多人能在商業領域取得成功并不是因為他們徹底的廢舊立新&#xff0c;而是因為他們乘風破浪&#xff0c;能在現有的基礎上有所改進和…

記錄:non-compatible bean definition of same name and class [com.XXX.XXX]

啟動 springBoot 工程時報錯&#xff1a; Caused by: org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name userLogAspect for bean class [com.foreveross.security.config.UserLogAspect] conflicts with existing,…

「日常訓練」 Genghis Khan the Conqueror(HDU-4126)

題意 給定\(n\)個點和\(m\)條無向邊&#xff08;\(n\le 3000\)&#xff09;&#xff0c;需要將這\(n\)個點連通。但是有\(Q\)次&#xff08;\(Q\le 10^4\)&#xff09;等概率的破壞&#xff0c;每次破壞會把\(m\)條邊中的某條邊的權值增大某個值&#xff0c;求\(Q\)次破壞每次將…