使用Nsight Eclipse Edition时如何使用gcc进行编译?

时间:2013-01-21 17:06:08

标签: eclipse cuda nsight

我在Nvidia的Nsight有一个小项目,它为我创建了makefile。我想使用一些SSE指令,并希望使用gcc而不是nvcc在项目中编译cpp文件。

有没有办法配置Nsight来做或者我必须手动编写Makefile?

编辑:.cu文件当然应该用nvcc编译。

2 个答案:

答案 0 :(得分:1)

要在Nsight中使用gcc,您必须创建makefile项目并手动编写makefile。

或者,您可以使用nvcc编译.cpp / .c文件。要添加nvcc无法识别的额外编译器选项(仅由gcc识别),应该为nvcc选项-Xcompiler添加前缀。

使用nvcc的一个副作用是你的.cpp程序需要运行libcudart.so,即使它并不真的需要它。

答案 1 :(得分:1)

您应该能够在CU文件中使用GCC SSE指令 - NVCC使用您的平台编译器编译所有主机代码。

如果您仍想使用GCC,您有两种选择:

  1. 创建两个项目 - 一个是使用NVCC编译的静态库项目,另一个是使用GCC编译的常规可执行项目。然后,您可以设置Nsight以将可执行文件链接到您的库。 (您也可以将NVCC用于库的可执行文件和GCC)
  2. 正如@Eric所提到的,你可以创建一个“Makefile Project”并手工编写makefile。