我有VS Express (2012) 的桌面 。 我是否也获得了NMAKE.EXE程序?
http://msdn.microsoft.com/en-us/library/dd9y37ha.aspx – Microsoft程序维护实用程序(NMAKE.EXE)是一个基于描述文件中包含的命令生成项目的工具。
当我运行:make
后运行:compiler msvc
,shell返回消息“ 'nmake'不被识别为内部或外部命令” 。 我怎样才能编译一个C ++程序使用这些命令? NMAKE.EXE工具是否与“nmake”命令有关系?
http://msdn.microsoft.com/en-us/library/wea2sca5(v=vs.90).aspx – MSBuild是Microsoft和Visual Studio的新的构build平台。
- 用cmake安装PDB文件
- 链接器内存不足LNK1102
- 随机无法parsing的外部符号,不应该在那里
- 为什么_CrtSetDumpClient不工作?
- 在dynamic加载的dll中查找name-mangled函数
http://msdn.microsoft.com/en-us/library/dd293626.aspx – 您可以使用MSBuild工具从命令提示符构build一个Visual C ++应用程序。 构build过程由项目文件(.vcxproj)中的信息控制,您可以创build和编辑。 项目文件根据构build阶段,条件和事件来指定构build选项。
我是否也因为VS Express for Desktop而购买了MSBuild工具? 当我使用:make
后运行:compiler msbuild
,shell返回的消息“'msbuild'不被识别为内部或外部命令” 。 msbuild.vim与MSBuild工具有关系吗?
msbuild.vim的维护者说: “我编写了使用.NET编译C#项目的脚本…我不知道它是否适用于C ++ …”
我怎样才能编译运行:compiler msbuild
之前:make
在Vim :make
?
关于编译C ++源文件等程序只有两个问题,请回答详细说明:
:compiler msvc
? :compiler msbuild
? 快速的搜索发现: 入门 – 用VIM进行C / C ++编程 ,这可能是一个很好的起点。
正如user786653提到的,这是失败的,因为你的PATH不包括nmake.exe所在的目录。你可以检查你的路径
:echo $PATH
Vim不会取代底层的构建功能,它只是简单地包装它。
在测试目录中创建新文件:
TEST.CPP
#include <iostream> int main() { printf("hello world."); return 0; }
Makefile文件
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
当我使用:make后运行:编译器msbuild,shell返回的消息“'msbuild'不被识别为内部或外部命令”。 msbuild.vim与MSBuild工具有关系吗?
是。
要在命令提示符中启用msbuild,只需将路径添加到机器上的.net4框架安装到PATH环境变量。 以下在Windows上为我工作:
您可以通过右键单击“计算机”,单击“属性”,然后单击左侧导航栏上的“高级系统设置”来访问环境变量。 在下一个对话框中,单击“环境变量”,向下滚动到“路径”并编辑它以包含您的框架路径(不要忘记在这里的最后一个条目之后的';')。
为了参考我的路径是C:\Windows\Microsoft.NET\Framework64\v4.0.30319
。 [1]
尽管我只将它用于C#项目,但我认为它也适用于C ++。 请记住,您必须在项目目录中运行msbuild
,否则msbuild将无法找到您的项目。
为了完整起见,这里是我的vimrc(OP已经通过电子邮件获得)的片段。
noremap <F4> :<CU>silent make<CR>:redraw!<CR> au FileType cs compiler msbuild
修改和添加到这个编译器脚本总是欢迎,当然!
问候
[1]: 如何使用Windows SDK 7.1从命令行运行msbuild?