2 回答
当我在运行 :compiler msbuild 后使用 :make 时,shell 返回消息“'msbuild' 不是内部或外部命令”。msbuild.vim 与 MSBuild 工具有关系吗?
是的。
要在命令提示符中启用 msbuild,您只需将计算机上安装的 .net4 框架的路径添加到 PATH 环境变量中。以下在 Windows 上对我有用:
您可以通过右键单击“计算机”,单击“属性”,然后单击左侧导航栏上的“高级系统设置”来访问环境变量。在下一个对话框中单击“环境变量”,向下滚动到“PATH”并对其进行编辑以包含您的框架路径(不要忘记此处最后一个条目后的“;”。
作为参考,我的路径是C:\Windows\Microsoft.NET\Framework64\v4.0.30319
. [1]
虽然我只将它用于 C# 项目,但我想它也适用于 C++。请记住,您必须在项目目录中运行msbuild
,否则 msbuild 将无法找到您的项目。
为了完整起见,这里是我的 vimrc 的片段(OP 已经通过电子邮件获得)。
noremap <F4> :<C-U>silent make<CR>:redraw!<CR>
au FileType cs compiler msbuild
当然,总是欢迎对这个编译器脚本进行补丁和添加!
问候
快速搜索一下: 入门 - 使用 VIM 进行 C/C++ 编程,这可能是一个很好的起点。
正如 user786653 所提到的,这是失败的,因为您的 PATH 不包括 nmake.exe 所在的目录。您可以检查您的路径
:echo $PATH
Vim 不会替换底层的构建功能,它只是简单地包装它。
- 从 Visual Studio 命令提示符启动 gVim
在测试目录中创建新文件:
测试.cpp
#include <iostream> int main() { printf("hello world."); return 0; }
生成文件
all: cl test.cpp
设置编译器 (gVim)
:compiler msvc
编译 (gVim)
:make
我没有 msbuild.vim 脚本,但是通过将“make program”设置为 msbuild.exe
:set makeprg=msbuild
您可以通过从包含解决方案 (.sln) 或项目 (.vxcproj) 文件的目录运行 :make 来构建,也可以使用msbuild.exe 命令行,如下所示:
:make c:\Test\Test.sln /t:Rebuild /p:Configuration=Debug
编译后,您可以使用以下命令检查输出
:copen
并使用(n 表示下一个,p 表示上一个,r 表示倒回第一个错误)导航错误
:cn
:cp
:cr