0

私は Visual Studio 2010 環境を使用しており、以前に作成した OpenCV アルゴリズムの一部を CUDA を使用して高速化しようとしています。Visual Studio で個別に適切にコンパイルされる別の .cu ファイルがあり、.cpp ファイルも個別に適切にコンパイルされます。

しかし、これらのファイルの両方を含むソリューションをビルドしようとすると、次のようなエラーが発生します。

エラー LNK2019: 未解決の外部シンボル "void __cdecl ComputeBasisKernelWrapper(float *,float *,float *,float *,float *,float *,float *,float *,float *,int,int)"

ComputeBasisKernelWrapper は、.cu ファイルで extern "C" を使用して定義される関数であり、必要な CUDA 割り当てを行い、並列計算を実行します。

.cu ファイル内の関数を呼び出す非オブジェクト指向の .c ファイルを使用する場合、正常に動作する同様のフレームワークがあります。

そのため、コンパイル設定を変更する必要があるのか​​、それとも何か他の問題があるのか​​ わかりません。

どんな助けでも大歓迎です。

4

1 に答える 1