cmake+;Eclipse/Nsight:编译器(nvcc)解析错误?

cmake+;Eclipse/Nsight:编译器(nvcc)解析错误?,eclipse,cuda,cmake,eclipse-cdt,nsight,Eclipse,Cuda,Cmake,Eclipse Cdt,Nsight,我正在使用CMake为CUDA项目的Nsight(=EclipseCDT的增强版)生成项目文件。 问题是,Eclipse确实解析了由nvcc生成的编译器错误 我在“项目->属性->C/C++制作”中启用了“nvcc错误解析器” Project->Error Parsers”并将其移动到列表顶部,但没有任何效果。 错误解析对于“本机”nsight CUDA项目和 非CUDA/非NVCC C++开发项目。 CMakeLists.txt非常基本: cmake_minimum_required (VER

我正在使用CMake为CUDA项目的Nsight(=EclipseCDT的增强版)生成项目文件。 问题是,Eclipse确实解析了由nvcc生成的编译器错误

我在“项目->属性->C/C++制作”中启用了“nvcc错误解析器” Project->Error Parsers”并将其移动到列表顶部,但没有任何效果。 错误解析对于“本机”nsight CUDA项目和 非CUDA/非NVCC C++开发项目。 CMakeLists.txt非常基本:

cmake_minimum_required (VERSION 2.8)
project(myproject)

find_package(CUDA REQUIRED)
set(CUDA_SOURCES 
    myprojmain.cu
    )

cuda_add_executable( myproject ${CUDA_SOURCES})

我找到了这件事的根本原因。 在.project XML项目文件中,子树

projectDescription/buildSpec/buildCommand/arguments/dictionary/*

包含键/值对

<key>org.eclipse.cdt.core.errorOutputParser</key>
org.eclipse.cdt.core.errorOutputParser
配置错误分析器列表:

<value>nvcc.errorParser;org.eclipse.cdt.core.VCErrorParser;org.eclipse.cdt.core.GmakeErrorParser;org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.WorkingDirLocator;org.eclipse.cdt.core.GLDErrorParser;</value>
nvcc.errorParser;org.eclipse.cdt.core.vErrorParser;org.eclipse.cdt.core.GmakeErrorParser;org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.WorkingDirLocator;org.eclipse.cdt.core.GLDErrorParser;
要使nvcc错误解析工作,nvcc.errorParse必须在列表中。顺序很重要,所以最好把它放在前面

我拼凑了一个小python脚本供我个人使用,它相应地为EclipseCDT项目打补丁。它作为fix-cmake-nsight-err-0.01.tar.gz附加到cmake bug
很高兴有一天能将其集成到CMake中…

我针对这个问题打开了一个bug: