linux - Ubuntu下编译Vim8(+python)无数次编译失败
ringa_lee
ringa_lee 2017-04-18 10:23:01
0
1
740

因为想用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?我已经完全晕了因为根本就不知道这个问题到底是哪里出来的……

ringa_lee
ringa_lee

ringa_lee

모든 응답(1)
PHPzhong

내가 사용한 ./configure 명령줄은

으로 컴파일되었습니다. 으아악

그런 다음 make를 사용하여 성공했습니다.

중간 팁으로, tgetenv 함수를 지원하는 함수가 없습니다
libncurses5-dev에서 찾았습니다

으아악

이것이 성공했습니다.

오류로 판단하면 실제 이유는 시스템에 libz 개발 패키지가 없기 때문입니다. zlib1g-dev 패키지를 설치하는 것이 좋습니다.

또한 다시 말씀드리지만, 오랫동안 Google을 사용하지 않고 검색해 오셨다면 이것이 올바른 방법입니다. 그 두 검색 엔진은 정말 좋지 않습니다.
내 솔루션은 모두 Google에 있습니다. 막혔지만 사다리를 찾는 것은 코더에게 필요한 기술입니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿