对VS2012构建的Emacs支持
Emacs support for VS2012 builds
我正试图得到我的。Emacs设置,这样我就可以从Emacs内部做VS2012项目的构建。
我按照Emacswiki上的说明来做这件事。它在过去的VS2005中为我工作。
问题是这个新版本的VS在每个错误/警告行前面附加了一个CPU名称,emacs的c++编译器解析会感到困惑,并认为这是文件名的一部分。例如,错误:
5>c:devprojmy_class.h(35): warning C4100: 'command' : unreferenced formal parameter (my_class.cpp)
当使用"next error"访问时,不是显示文件和行,而是提示:
Find this error in (default 5>my_class.h): ~/dev/proj/
我可以在我的。emacs(或者C和c++模式)中做一个调整来解决这个问题吗?或者,是否有更新版本的Emacs(或mode .el文件)可以更好地处理VS2012 ?我目前使用的是GNU Emacs 24.2.1
我想我已经找到了。
问题是不是 GNU Emacs没有尝试支持VS2012编译器消息,问题是它在支持中有几个错误(在24.2.1中)。
一点背景知识:Emacs用来识别错误和警告的所有regexp都在一个变量中,该变量具有迷人的冗余名称compilation-error-regexp-alist-alist
。这是在compile.el
elisp文件中声明的。
这个问题在emacs开发列表中讨论过,并在2012年10月14日发布了补丁。
有两个相当简单的解决方案。
- 升级到Emacs 24.3或更高版本。这应该有补丁。
- (方便)编辑你的lisp/progmodes/compile。el文件。在
compilation-error-regexp-alist-alist
中找到"msft"条目,并将其移动到冒犯的"edg-1"条目前面的某个地方。在此过程中,您可能希望在第一个regexp行末尾的反斜杠之前添加?
(请参阅diff链接)。然后字节编译文件并重启emacs。
相关文章:
- 编译时未启用intel oneApi CUDA支持
- POCO::PostgreSQL:如何将std::vector支持添加到`Binder::bind`
- 使用CMake检测支持的C++标准
- 为什么istream不支持右值提取
- 当我编译webrtc服务器时,Windows上只支持clang-cl
- 扩展光电二极管探测器以支持多个传感器
- MSVC是否支持C++11样式的属性而不是__declspec
- 在使用GPU支持编译Tensorflow时,会遇到CUDA_TOOLKIT_PATH未绑定变量
- 当使用比格式支持的精度更高的精度来显示数字时,会写出什么数据
- 错误:(-210:不支持的格式或格式组合)功能'create'中的硬件视频解码器不支持视频源
- 哪个C++规范开始支持 std::vector
- 如何检测VS C++编译器是否支持C++11?
- CertGetCertificateChain 具有支持的内存存储和证书信任列表
- Casablanca/cpprestsdk listener.support接受函数,但不支持方法
- 将 IPv6 支持添加到雨量计
- 为什么C++不支持对未初始化变量进行智能分析?
- LMDB 是否支持随机读取?
- 在 c++ 中连接字符串和整数,以便在 C++ 11 不支持计算机的情况下读取多个文件
- 在 Ubuntu 18.04 上编译 GLSL 着色器时"不支持 GLSL 3.30"?
- 对VS2012构建的Emacs支持