如何在Windows中直接从vim编辑器编译cpp文件?

2024-03-25

我最近在 Windows 操作系统中安装了一个 vim 编辑器。 我只知道传统的过程,即在编辑器中创建源文件并从命令行运行它。但, 我不太明白如何直接从vim编辑器编译CPP程序。 当我运行命令时

:!g++ 你好.cpp -o 你好

从 vim 命令行,我收到以下消息

C:\WINDOWS\system32\cmd.exe /c (g++ hello.cpp -o 你好)

按任意键关闭此窗口...


我假设你的 Vim 版本是 windows 版本而不是 cygwin 版本。

首先,您需要安装编译器,并确保它在您的路径中。

另外,请阅读有关快速修复窗口的文档,因为这是融合的vim方式编译。:!make or :!g++ ...不是要走的路。

MSVC

我不认为这是您拥有的编译器,因为我预计您在这种情况下会使用 Visual Studio。无论如何,IIRC,有一个msdev您可以加载的编译器插件:compiler msdev,那么你应该能够运行:make.

如果您发现错误,请立即完成我的回答。

g++ 通过 cygwin

有一个很大的优点:gnumake配置正确:在控制台中你可以运行make foo,如果你有foo.cpp or foo.c and no Makefile在当前目录中,这将编译单文件项目。在所有情况下,Makefile很好;并且需要多个源文件。

大问题:路径名的表达方式不同。它们需要翻译。我在 Build-Tools-Wrapper 插件中提供了一种方法来做到这一点。只需执行:BTW add cygwin.

然后从 vim 中再次输入:make %<。这将转化为:make foo(假设你正在编辑foo.cpp),翻译成make fooshell 明智的,这翻译成$CXX $CPPFLAGS $CXXFLAGS $LDFLAGS foo.cpp -o foo $LDLIBS(或类似的东西)。

注意:这意味着可以通过以下方式调整选项::let $CXXFLAGS = '-std=c++17 -Wall -Wextra'

顺便说一句,如果你有我的 build-tools-wrapper 插件,你可以直接执行:Make代替:make %<, 要不就<F5>直接,IIRC。

g++ 通过 mingw

好消息:无需翻译路径名

坏消息是,gnumake 没有正确配置。这意味着在控制台中make foo行不通的。因此,这在 Vim 中不起作用。

这次,您要么需要Makefile,否则你需要调整'makeprg'环境。比如说:let &makeprg = 'g++ -Wall -Wextra -std=c++17 -o %< %'然后简单地输入:make.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Windows中直接从vim编辑器编译cpp文件? 的相关文章

随机推荐