您的位置:首頁技術文章
文章詳情頁

linux - Ubuntu下編譯Vim8(+python)無數次編譯失敗

瀏覽:130日期:2022-09-09 16:44:14

問題描述

因為想用YouCompleteMe,又希望vim帶python2,所以ubuntu軟件庫里的默認的vim就不合適了,就找到了github上的vim源文件下載了下來,按照YouCompleteMe里的一片文章來編譯,不知道是不是欺負我不懂Makefile,總之就報些全(stackoverflow)世(baidu)界(bing)都說不對的錯誤;幾乎崩潰的我只想說:我就只是想用個喜歡的編輯器……

這是YouCompleteMe推薦我看的源碼編譯vim攻略

以上都只是前因,現在感覺已經不是這個問題了。我為了自己編譯安裝vim已經花了一天時間了,然而問題出在哪里都不知道。之前用

export CFLAGS='-pthread'

解決過下面這個問題

/usr/bin/ld: /usr/local/lib/libpython2.7.a(thread.o): undefined reference to symbol ’sem_post@@GLIBC_2.2.5’

這個時候我的./configure只設置了--enable-pythoninterp=yes --with-python-config-dir=/usr/lib/python2.7/config,之前成功安裝后發現沒有成功把python編譯進去,所以裝第二次,又出現這個問題的時候,之前那個辦法已經不管用了,也不知道是為啥;后來只把python3有關的選項去掉,其他的全都編譯進vim,又出現了如下問題:

/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/libgio-2.0.so: undefined reference to symbol ’inflateInit2_’

stackoverflow、segmentfault和少部分csdn博客都翻過了,自己嘗試解決問題然而解決不了。這個問題怎么辦才好?增加gcc參數可以用export CFLAGS這種形式嗎?還是要改Makefile?我已經完全暈了因為根本就不知道這個問題到底是哪里出來的……

問題解答

回答1:

我的編譯是成功的,我用的./configure 的命令行是

./configure --enable-pythoninterp=yes --with-python-config-dir=/usr/lib/python2.7

然后用了 make 成功了,

中間提示,我沒有一個可以支持函數tgetenv這個函數,查找了是在libncurses5-dev

sudo apt-get install libncurses5-dev

這些就成功了。

從你的錯誤來看,你真正的原因是系統里沒有libz 的開發都包,建議你安裝 zlib1g-dev這個包。

還有提醒一下,你搜索了半天,沒有用google,這個才是正道。那兩個搜索引擎真的不行。我解決都是google,雖然被墻了,但找梯子是碼農的必要技能。

標簽: Python 編程
相關文章:
国产综合久久一区二区三区