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_command
add_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.ptx
add_custom_target