CUDA 5.0错误LNK2001:用于CUDA方法解析的外部符号(CUDA 5.0 error L

2019-08-04 04:44发布

我在链接错误

1>ManifestResourceCompile:
1>  All outputs are up-to-date.
1>kernel.cu.obj : error LNK2001: unresolved external symbol _cudaMalloc@8
1>kernel.cu.obj : error LNK2001: unresolved external symbol _cudaFree@4

我看到加入了类似的问题在这里: 未解决的外部符号初学者CUDA程序但它已经将这些信息输入连接器。

那么问题出在哪里? 我使用Visual Studio 2010中的高级与CUDA SDK 5.0和Nsight 3.0 VS

源代码在这里: http://pastebin.com/DfdfSfWd (这是由Visual Studio中创建新项目生成CUDA 5.0为例)

[编辑]

对于链接器设置

配置属性 - >连接器 - >常规 - >附加库目录:

$(CudaToolkitLibDir)$(CUDA_LIB_PATH)$(CUDA_PATH)\ LIB \ $(PlatformName)

配置属性 - >连接器 - >输入 - >附加依赖

cuda.lib; cudart.lib; 和其他库..

但在性能我看到CUDA富人自己的林德,“CUDA连接器”,那不都设置

附加库目录

附加依赖

所以我设置改变这一特性,但没有,链接器仍然有问题。

[编辑]

好吧,错误是当我改变

配置属性> CUDA C / C ++ - >设备 - >代码生成

compute_10,sm_10

compute_20,sm_20

并添加一个标志用于-dc CUDA C / C ++

Answer 1:

好吧,我发现如何设置项目分别编译和链接,下面我们就计划在那里工作的一个例子: 例如simpleSeparateCompilation



文章来源: CUDA 5.0 error LNK2001: unresolved external symbol for cuda methods