繁体   English   中英

在Emacs中使用Visual Studio 6 C ++编译器

[英]Using Visual Studio 6 C++ compiler from within Emacs

我刚刚开始使用c ++开发,我想使用emacs编写代码,然后使用visual studio 6编译器在emacs中编译和运行它。 我已经搜索了一下,但似乎无法找到解释这是怎么做的。 有什么指针吗?

谢谢你的帮助,

约尔格

我不确定你是否会考虑仅使用Emacs交换Visual Studio中的文本编辑器,但这里有一个sf.net项目就是这样做的。

http://sourceforge.net/projects/visemacs/

在过去的几年里,我做到了这一点。 有两种方法可以做到这一点:

  1. 在旧版本的VS(包括VS 6.0)中,有一个按钮可以导出项目的nmake文件。 我有时会这样做,然后使用nmake进行编译。 我有

    (setq compile-command“nmake debug”)

    在我的.xemace / init.el中。 您必须添加nmake文件的名称,并且nmake.exe必须位于您的路径中。 (顺便说一句,我修改了compilation-error-regexp-alist-alist以帮助解决错误。如果你想要这个,请告诉我。)

  2. 较新版本的VS没有导出nmake文件的按钮。 对于这些,我打电话给devenv.com。 在这种情况下,我有

    (setq compile-command“devenv.com / build Debug”)

    在我的.xemacs / init.el中。 您必须添加.sln文件的名称。 虽然我没有用VS 6.0做到这一点,但我相信它也可以运行。

作为Andrew Stein的回答,要在不使用nmake的情况下在Visual Studio 6上执行命令行构建,请使用以下语法:

msdev wspname.dsw /make "project - Win32 Debug"

Visual Studio是一个IDE

它使用下面的cl.exe编译器。

我们使用带有GNU make (gmake)的emacs,它包含在我们自己的gmake包装器可执行文件中,并且运行良好。

只需设置一个简单的键绑定来调用正在编译的.c / .cpp文件上的cl.exe来构建.obj文件。 我们有一个键绑定用于初始化文件夹中的编译,这将使所有.obj文件不是最新的,但这纯粹由GNU make处理。

我们还有其他键绑定,例如用于链接可执行文件和启动它等。

有点偏离主题,但你为什么使用visual studio 6? 当前版本的Visual Studio的编译器(以及剥离的IDE)可从Microsoft免费获得。

在任何一种情况下,您都可以从命令行调用编译器,因此它应该像设置makefile一样简单。

如果你只想设置一个文件进行编译,那么把它放在你文件的顶部......

// -*- compile-command:"g++ test.cpp -g -lwinmm -o test.exe"; -*-

请参阅我的博客文章

当然,您需要调整以使用CL.EXE并选择适当的参数。

对于启动make,它有点棘手,因为当您在层次结构中进一步编辑文件时,必须像在父源目录中一样运行make。

我知道这样做的唯一方法就是把它放在每个文件的顶部......

// -*- compile-command:"nmake"; default-directory:"c:/projectroot/"; -*- 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM