c++ - eclipse C++ : Setting Compiler Options For Specific Files

标签 c++ eclipse cuda

我有一个 CUDA C++ 项目,正在使用 Eclipse Nsight 编写和编译。我的目标是从包含 main 函数的文件中得到一个可执行文件,然后为项目中的每个类生成一个单独的共享库,而无需在 IDE 外部进行编译。我可以通过为每个类创建一个项目,然后将它们全部包含在主项目中来做到这一点,但我想要一种方法来将所有文件写入一个 Eclipse 项目中,并且最终仍然得到所需的工件。项目结构如下:

ClassA.h
ClassA.cu
ClassB.h
ClassB.cu
main.cpp

我希望编译项目并最终得到以下工件:

ClassA.so
ClassB.so
main.exe

理想情况下,我想知道是否有一种方法可以对特定文件进行分组并仅为该组文件设置编译器选项。即

nvcc ClassA.cu -shared -fPIC -o ClassA.so
nvcc ClassB.cu -shared -fPIC -o ClassB.so
g++  main.cpp -lClassA.so -lClassB.so -o main.exe

我知道这是一个不寻常的请求,但这是我试图从 emacs 领域将 shell 脚本编译到 IDE 领域的更大项目架构的一部分。

最佳答案

选项 A:编写和维护自定义 make 文件。

选项 B:创建 3 个项目 - exe 和两个共享库。

关于c++ - eclipse C++ : Setting Compiler Options For Specific Files,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26413717/

相关文章:

android - eclipse 中的 "An existing connection was forcibly closed by the remote host"

java - Eclipse IDE 问题部分下的死代码是什么意思

CUDA 启动时请求的资源太多

c++ - strcmp() 可以比较动态字符数组和静态字符数组吗?

C++ - 从移动赋值运算符调用复制赋值

C++ 链表核心转储错误

types - 在哪里可以找到矢量类型(uchar3、float3、uint2 等)的定义?

c++ - WINAPI C++ VS 2008 与 VS 2010

java - 扩展 API 内部错误 : org. powermock.api.extension.reporter.MockingFrameworkReporterFactoryImpl

CUDA:从内核调用 __device__ 函数