Fork me on GitHub

Windows GVim YouCompleteMe,提示gVim编译版本问题

最近遇到这样一个问题:Windows GVim YouCompleteMe安装失败,YouCompleteMe unavailable: unable to load Python

吭哧吭哧解决了,后来上网一看,原来已经有朋友写出来了,我就不多写了,转发一下

https://blog.csdn.net/F4prime/article/details/113783784

问题描述
Windows 10 操作系统
使用vim-plug或者Vundle插件管理器安装YCM
YCM安装时没有报错
打开时显示如下:

系统中已经装好Python,如果没有装好的话,先去装好Python,推荐使用Python3
问题分析
系统中已经装好Python,说明问题出现在GVim找不到Python的应用。经多方尝试,发现问题有以下两种可能:

GVim的位数与Python的位数不一致,导致GVim无法调用Python
GVim默认使用的版本号与安装的Python的版本号不一致,导致GVim调用了错误的文件。
问题解决
位数不一致的问题
查看GVim位数的方法
将GVim的可执行文件添加进系统的环境变量,这个用Vim 的应该已经干了(不会的自己百度搜去)
打开cmd.exe( 还不会打开的百度搜去)。
输入gvim --version
如图,
这个就是64bit版本,没有看见64bit 的就是32bit版本
查看Python位数的方法
将GVim的可执行文件添加进系统的环境变量,这个用Vim 的应该已经干了(不会的自己百度搜去)
打开cmd.exe( 还不会打开的百度搜去)。
输入python 回车
如图,

这个就是64bit版本,没有看见64bit 的就是32bit版本
位数不一样的处理方法
推荐都使用64bit 的版本,所以处理方法是那个是32bit 的版本就将那个卸载然后重装成64bit 的版本。
Python可以从官网https://www.python.org/downloads/下载。
GVim 可以从GitHub下载,https://github.com/vim/vim-win32-installer/releases 下载。
下载的时候选择完整版,不要选择精简版。
记得选择带有x64字样的。

GVim找不到Python的处理方法
验证GVim和Python 的位数对应之后进行此步。

查看GVim版本
方法上面有,

看到上面的python3/dyn说明支持Python,且是动态加载。
输入echo has('python3')显示0,说明GVim找不到Python。

配置GVim找到Python文件
查看GVim默认找的Python文件位置。
输入`:set pythonthreedll?

看显示

这里和你的Python版本是对不上的。Python版本怎么看上面已经有了。

修改为正确的Python版本
首先将Python的路径添加到系统的环境变量中,并确定该文件位置有一个叫做python3x.dll的文件,其中x是一个数字。
验证一下,在控制台中输入python3x.dll(x用你那里的数字代替)
显示

说明系统已经可以找到这个文件了。

去GVim的安装路径中找_vimrc这个文件,这个是vim的配置文件,在里面加一行

 

 在我这里使用的python39.dll

注意这里文件的名字要和你的上面找到的文件名称相对应。保存并退出。
如果不愿意将Python添加进环境变量中的话,可以在这里写dll文件的完整路径比如C:\your-path-to-Python\python3x.dll

再打开一下GVim,就会发现报错没有了。

posted @ 2022-05-02 22:53  kean0048  阅读(168)  评论(0)    收藏  举报