【问题标题】:CUDA - OpenCV - C++ Linking Error in Visual Studio 2010CUDA - OpenCV - Visual Studio 2010 中的 C++ 链接错误
【发布时间】:2013-05-23 01:34:15
【问题描述】:

我正在使用 Visual Studio 2010 环境,并试图在 CUDA 的帮助下加速我之前编写的一些 OpenCV 算法。我有一个单独的 .cu 文件,可以在 Visual Studio 中单独编译,我的 .cpp 文件也可以单独编译。

但是当我尝试构建包含这两个文件的解决方案时,我收到如下错误:

错误 LNK2019:无法解析的外部符号“void __cdecl ComputeBasisKernelWrapper(float *,float *,float *,float *,float *,float *,float *,float *,float *,int,int)"

ComputeBasisKernelWrapper 是一个在 .cu 文件中使用 extern "C" 定义的函数,负责进行必要的 CUDA 分配和执行并行计算。

我有一个类似的框架,在我使用非面向对象的 .c 文件时可以正常工作,该文件调用 .cu 文件中的函数。

所以,我不确定是否需要对编译设置进行一些更改,或者是否有其他问题。

感谢任何帮助。

【问题讨论】:

  • 我想我已经通过删除“extern”解决了这个问题。它现在可以正常编译和构建了。
  • 也许您可以发布您为修复它所做的事情作为答案。然后我们可以称这个问题为已回答。谢谢。

标签: c++ visual-studio-2010 opencv cuda


【解决方案1】:

通过删除“extern”解决了这个问题。

【讨论】:

    猜你喜欢
    • 2011-11-05
    • 2014-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    相关资源
    最近更新 更多