FindCUDAを使用したCMAKEでは、入力ファイルを指定するfilename.cuと、cuda_compile_ptxコマンドは形式の出力ファイル名を生成しますが、出力ファイル名は形式cuda_compile_ptx_generated_filename.cu.ptxである必要がありますfilename.ptx。
これを機能させる簡単な方法はありますか?
理想的には、を指定できる必要があります-o <outputName>。ただし、問題は、CUDA_COMPILE_PTXマクロが実際に-oオプションをオーバーライドすることです。cuda_compile_ptx_generated_${filename}.ptx
プロジェクトにCUDAコンパイルを追加する2つの代替方法があります
CUDA_COMPILE_PTXに変更して問題を回避し、で使用します。add_custom_commandadd_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/my_ptx.ptx COMMAND ${CMAKE_COMMAND} -E copy ${cuda_ptx_files} ${CMAKE_BINARY_DIR}/my_ptx.ptx DEPENDS ${cuda_ptx_files})${CMAKE_BINARY_DIR}/my_ptx.ptxadd_custom_target