私は 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 ファイルを使用する場合、正常に動作する同様のフレームワークがあります。
そのため、コンパイル設定を変更する必要があるのか、それとも何か他の問題があるのか わかりません。
どんな助けでも大歓迎です。