在树莓派上安装YCM(YouCompleteMe)

? 太折腾了!如果你搜索到了这篇文章,建议直接使用SpaceVim作为替代品。

0x0.第一个坑——不支持Python

? 我的树莓派的系统是基于Debian Stretch的Raspbian Stretch。使用apt-get安装的vim不支持python脚本。你可以通过输入:

1
vim --version | grep python

来检查,如果发现python/python3前面出现了加号,恭喜你,你可以跳过本步骤了。它说明你的vim支持python。如果都是减号,你需要重新编译安装vim了。

? 在安装之前先将vim卸载掉。

1
sudo apt-get remove vim vim-runtime gvim

?

? 然后安装编译所需要的包

1234
sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev libgtk2.0-dev libatk1.0-dev libbonoboui2-dev libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev python3-dev ruby-dev lua5.1 liblua5.1-dev libperl-dev git

? clone vim到目录下

123
cd ~git clone https://github.com/vim/vim.gitcd vim

? configure vim。这一步要注意,YCM插件只能使用python2python3,也就是在指定python目录的时候你只能设置一个。

123456789101112
./configure --with-features=huge             --enable-multibyte 	    --enable-rubyinterp=yes 	    --enable-python3interp=yes 	    --with-python3-config-dir=/usr/lib/python3.5/config-3.5m-arm-linux-gnueabihf  #这里注意检查是否是你的python目录	    --enable-perlinterp=yes 	    --enable-luainterp=yes             --enable-gui=gtk2             --enable-cscope 	   --prefix=/usr/local

make VIMRUNTIMEDIR=/usr/local/share/vim/vim81

? 如果以后你想方便卸载掉vim,使用以下命令安装

123
sudo apt-get install checkinstallcd ~/vimsudo checkinstall

? 否则的话就直接make install好了

12
cd ~/vimsudo make install

? 到此为止我们完成了vim的编译安装,但这仅仅是第一步。

0x1.下载YCM

? 可以通过Vundle来下载YCM或者是直接下载源码

1234
cd ~/.vim/bundlegit clone --recursive https://github.com/Valloric/YouCompleteMe.gitcd YouCompleteMegit submodule update --init --recursive

0x2.安装libclang

? 这一步是为了C家族的语义分析与补全,如果没有这个需求可以直接跳过。

? 可以通过手动编译安装,可以直接下载编译好的二进制文档。

? 我这里选择的是直接下载了编译好的二进制文档。

大专栏  在树莓派上安装YCM(YouCompleteMe)le>

? http://releases.llvm.org/download.html 官网有对应不同架构的预编译文档,自行挑选下载。下载好后

12
cd ~wget -c http://releases.llvm.org/7.0.1/clang+llvm-7.0.1-armv7a-linux-gnueabihf.tar.xz
12345
tar -xvJf clang+llvm-7.0.1-armv7a-linux-gnueabihf.tar.xzmkdir ycm_buildcd ycm_buildcmake -G "Unix Makefiles" -DPATH_TO_LLVM_ROOT=~/clang+llvm-7.0.1-armv7a-linux-gnueabihf . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cppmake ycm_core

0x3.配置YCM

? YCM在语义分析时使用libclang,而libclang需要参数选项,这从哪里来呢?YCM通过提供给一个代码工程一个python文档的方式来通知libclang所需的参数选项,这个文档就是.ycm_extra_conf.py

? 复制.ycm_extra_conf.py

1
cp ~/.vim/bundle/YouCompleteMe/third_party/ycmd/examples/.ycm_extra_conf.py ~/.vim/

? 在.vimrc中添加以下配置项

? 注意下面的 python 解释器的路径要和编译 ycm_core 的时候使用的 python 解释器是相同的版本(2 或 3)

123456789101112

let g:ycm_confirm_extra_conf=0                                     

let g:ycm_complete_in_comments=1                                   

let g:ycm_collect_identifiers_from_tags_files=1                    " 键入第一个字符时就开始列出匹配项                                 let g:ycm_min_num_of_chars_for_completion=1                        " 设置python解释器路径以及配置文档路径let g:ycm_server_python_interpreter=‘/usr/bin/python‘let g:ycm_global_ycm_extra_conf=‘~/.vim/.ycm_extra_conf.py‘

0x4.可能会遇到的问题

1.退格失灵。

解决办法:在.vimrc文档中增加以下配置

12
set nocompatibleset backspace=indent,eol,start

2.无法补全C++代码

解决方法:在.ycm_extra_conf.py的flags部分添加以下内容

1234567
‘-isystem‘,  ‘/usr/include‘,  ‘-isystem‘,  ‘/usr/include/c++/4.8‘,  ‘-isystem‘,  ‘/usr/include‘,  ‘/usr/include/x86_64-linux-gun/c++‘,

使用’-isystem’是对系统自带的头文档进行解析,’-I’则是对第三方的头文档进行解析。

0x5.参考文章

https://www.cnblogs.com/zzqcn/p/4660615.html

https://www.jianshu.com/p/d908ce81017a?nomobile=yes

https://github.com/Valloric/YouCompleteMe

https://github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source

原文地址:https://www.cnblogs.com/liuzhongrong/p/12000124.html

时间: 2024-10-09 12:20:03

在树莓派上安装YCM(YouCompleteMe)的相关文章

在树莓派上安装FTP服务器

在终端安装FTP服务器 sudo apt-get install vsftpd 然后对FTP进行配置,打开它的配置文件 sudo nano /etc/vsftpd.conf 修改以下配置 # 不允许匿名访问  anonymous_enable=NO  # 设定可以进行写操作 write_enable=YES  # 设定本地用户可以访问 local_enable=YES  ascii_upload_enable=YES  ascii_download_enable=YES 重启服务 sudo se

树莓派上 安装并 运行opencv

http://www.cnblogs.com/farewell-farewell/p/6125761.html 1.先安装依赖项 OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安装cmake. sudo apt-get install build-essential sudo apt-get install cmake sudo apt-get install libgtk2.0-dev sudo apt-get install pkg-config sudo

在树莓派上安装opencv

先安装运行库 sudo apt-get update sudo apt-get upgrade sudo apt-get install -y build-essential sudo apt-get install -y cmake  sudo apt-get install -y pkg-config  sudo apt-get install -y libpng12-0 libpng12-dev libpng++-dev libpng3  sudo apt-get install -y l

关于树莓派上安装teamviewer方法

在ubuntu中,sudo apt-get install -f是干什么用的? 1.sudo命令:sudo命令用来以其他身份来执行命令,预设的身份为root,简单来说就是提升权限,因为apt-get install是要安装程序,这个需要管理员权限,因此借助于sudo命令提权. 2.apt-get命令:apt-get命令是Debian Linux发行版中的APT软件包管理工具.所有基于Debian的发行都使用这个包管理系统.deb包可以把一个应用的文件包在一起,大体就如同Windows上的安装文件

树莓派上安装SVN服务器

sudo apt-get install subversion cd /home/pi mkdir svn svnadmin create /home/pi/svn/Project cd /home/pi/svn/Project/conf nano svnserve.conf ### 去掉注释 ### # anon-access = none # auth-access = write # password-db = passwd nano passwd # user = 123456 kill

在树莓派上安装ubuntu

首先下载ubuntu, 地址:https://wiki.ubuntu.com/ARM/RaspberryPi 版本:Raspberry Pi 3: ubuntu-16.04-preinstalled-server-armhf+raspi3.img.xz (4G image, 216M compressed) 解压文件,得到近4G镜像文件 添加ssh文本文档.登录账号及密码均为:ubuntu 修改密码 添加vnc界面远程控制:首先更新软件库并下载vnc sudo apt-get updatesud

树莓派上的浏览器安装

树莓派系统默认只有几个很不好用的浏览器,就比如那个Midori浏览器,我到现在都没找到地址栏在哪…… 那我们怎么在树莓派上安装其他的浏览器呢? 首先我先来教大家安装谷歌浏览器~ 这里我推荐大家用debian自动安装,方便快捷~ 查看原代码 apt-get -y install chromium-browser chromium-l10n ##安装谷歌浏览器 当然你在安装之前最好更新一下系统. 查看原代码 sudo apt-get update sudo apt-get upgrade 这样系统就

linux上 安装并 运行opencv

我是在树莓派上安装的. 1.先安装依赖项 OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安装cmake. sudo apt-get install build-essential sudo apt-get install cmake sudo apt-get install libgtk2.0-dev sudo apt-get install pkg-config sudo apt-get install python-dev python-numpy sud

写一下自己一个星期玩树莓派的经验,如何安装系统,如何在树莓派中安装opencv,如何运行代码。

在树莓派上安装opencv最简单的方法是: sudo apt-get update sudo apt-get install libopencv-dev sudo apt-get install python-opencv 如果你还想了解更多,下面提供的那么多链接中你一定找到方法的,饭都送到你面前你不会吃,那么你活该饿着. 平时自己习惯用vim 所以在树莓派上安装了vim编辑器 安装命令  sudo apt-get  install  vim 就可以了. 好了,可以运行一个opencv的例子来检