更新
这个问题寻求工具方面的帮助 - "如何调试我的问题。"在我输入时,没有答案。我最终绊倒了我试图解决的实际问题的解决方案,并提供了解决方案作为答案。
我仍然非常乐意听到关于工具问题的任何答案,如果有人提出可行的答案,我会非常乐意转移复选标记
原始问题
我最初在https://github.com/Valloric/YouCompleteMe向YouCompleteMe https://github.com/Valloric/YouCompleteMe/issues/1345发布了一个问题。它立即关闭,因为没有Windows的官方支持。好的,很好。
我现在要求Stackoverflow社区,希望有人正在搞乱YCM for Windows(有一个"非官方的YCM for Windows"页面,所以必须有人对此进行黑客攻击的东西)。
以下是我打开的问题的原始内容。
如果有人确实有一个有效的答案,那太好了!在这一点上,我正在寻找更多可用于在调试器下运行YCM服务器的程序,以查看它究竟在哪里窒息
我试图让YCM在我的Windows 7机器上运行。我有几个 其他与YCM没有问题的XP,Win7,Win8机器。我'已经 尝试使用MinGW,Visual Studio 2010构建支持内容 在目标机器以及我有YCM的其他机器上 工作
当我打开Python或C ++文件时,会立即显示一条消息 YCM崩溃了,我应该重启:YcmRestartServer。它 提到我应该设置g:ycm_server_keep_logfiles才能看到 日志消息。我已经这样做了,但我还是没有 logfiles和"设置g:ycm_server_keep_logfiles"消息仍在 出现。
我也得到了('连接中止。',错误(10061,'没有连接可以 是因为目标机器主动拒绝了它()))
我查看了python \ ycm \ youcompleteme.py并看到了"日志文件 删除"消息因为尝试打开时出现异常而出现 self._server_stderr(IOError)指定的文件。现在我来了 怀疑这是因为服务器实际上从未实现过 足够的启动顺序实际创建标准输出和 stderr文件。
我可以采取哪些步骤来调查服务器的原因(?) 无法正常启动。
我还有一个模糊的想法,就是阻止了防火墙规则 连接,我查看了Windows防火墙,但没有看到 任何指向localhost连接被阻止的东西 诸如此类的东西。
我可以通过调试,欣赏有关的建议 我需要做的程序才能获得Visual Studio 2010 进入服务器进程并解决问题。
哦,不知道如果这个事实意味着什么,但我能够使用 Rip-Rip的clang_complete没有问题,但我非常愿意 使用YCM。
答案 0 :(得分:2)
我从来没有真正得到答案或解决中心问题"如何在Windows下调试YCM"但我确实解决了为什么YCM不能为我工作的根本问题,所以后人(以及其他绝望的YCM用户可能会通过谷歌来到这里)
对我来说,YCM立即崩溃并烧毁。我通过看到一个工作正常的Windows系统开始出现症状来解决问题。
更改:我安装了Python 3.x并将其切换为系统首选python(通过弄乱路径,您对Windows有什么期望?)。
事实证明(duh),YCM依赖于Python 2.x,当它无法找到它试图打开的任何库时,它就会崩溃。
我开始试图准确找到YCM试图访问的文件并在YCM目录中本地提供它们的路径,但在花了五分钟后,我决定我想要更简单的东西。
因为我仍然希望Python 3.x成为'系统'版本,我决定操纵路径 WITHIN Vim,所以我在YCM加载之前添加了这个,
if (has('win32') || has('win64'))
let $PATH = 'C:\Python27;' . $PATH
endif
希望这能为别人带来一些痛苦