安装YouCompleteMe

3 篇文章 0 订阅
1、为了更好的解析语义,可以选择下载clang二进制包:
2、 编译ycm_core:
mkdir -p ~/.vim/bundle/YouCompleteMe/ycm_build
cd  ~/.vim/bundle/YouCompleteMe/ycm_build
cmake -G "Unix Makefiles"  ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp

生成clang的Makefile:
cmake -G"Unix Makefiles" -DPATH_TO_LLVM_ROOT=~/ycm_temp/llvm_root_dir .~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp

其中~/ycm_temp/llvm_root_dir是将下载下来的clang二进制包的(bin,include等)解压缩的位置。

最后一步:
cmake--build --target ycm_core



遇到的问题:
a.ycm包没有完全下载完就开始进行配置。出现找不到cpp目录的错误

b.非源码安装Python,缺少python.h头文件,在2.d步骤时,出现CouldNOT find PythonLibs (missing: PYTHON_LIBRARIESPYTHON_INCLUDE_DIRS)错误,解决方案就是重新下载Python安装包,覆盖安装原来的包

c.执行到最后一步的时候,出现/usr/bin/ld:/usr/local/lib/libpython2.7.a(abstract.o): relocation R_X86_64_32against `.rodata.str1.8' can not be used when making a sharedobject; recompile with -fPIC /usr/local/lib/libpython2.7.a: couldnot read symbols: Bad value

 
  原因就是安装python的时候./configure这一步默认没有配置编译动态.so库——libpython2.7.so,解决方案如下:
   重新编译python:
    ./configure--enable-shared
    makeclean
    make
    sudo makeinstall

   再重复步骤2.d

d.安装的过程中出现

YouCompleteMe unavailable no module named frozendict或者YouCompleteMe unavailable no module named future

      原因就是你或者没用Vundle安装,或者Vundle由于网速太慢下载到一半不能把安装依赖包完全下载下来

      解决方案:

      进入到YouCompleteMe目录,在terminal窗口敲入git submodule update --init--recursive

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值