linux - Ubuntu下編譯Vim8(+python)無數次編譯失敗
問題描述
因為想用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,雖然被墻了,但找梯子是碼農的必要技能。
相關文章:
1. mysql - AttributeError: ’module’ object has no attribute ’MatchType’2. github - 利用Python 自動化部署問題3. 求大神幫我看看是哪里寫錯了 感謝細心解答4. npm鏡像站全新上線5. javascript - 圖片能在網站顯示,但控制臺仍舊報錯403 (Forbidden)6. python - from ..xxxx import xxxx到底是什么意思呢?7. php自學從哪里開始?8. MySQL客戶端吃掉了SQL注解?9. phpstady在win10上運行10. 數據庫 - MySQL 單表500W+數據,查詢超時,如何優化呢?
