5
在帶有FindCUDA的CMAKE中,給定輸入文件filename.cu
,cuda_compile_ptx
命令生成輸出文件名格式爲cuda_compile_ptx_generated_filename.cu.ptx
,但我需要輸出文件名的格式爲filename.ptx
。如何更改CMake中cuda_compile_ptx的輸出文件名?
有沒有簡單的方法來完成這項工作?
在帶有FindCUDA的CMAKE中,給定輸入文件filename.cu
,cuda_compile_ptx
命令生成輸出文件名格式爲cuda_compile_ptx_generated_filename.cu.ptx
,但我需要輸出文件名的格式爲filename.ptx
。如何更改CMake中cuda_compile_ptx的輸出文件名?
有沒有簡單的方法來完成這項工作?
理想情況下,您應該能夠指定-o <outputName>
。然而,問題是,CUDA_COMPILE_PTX
宏實際上覆蓋-o
選項與cuda_compile_ptx_generated_${filename}.ptx
下面是兩種替代方式添加CUDA編譯到項目
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
in add_custom_target
我認爲做到這一點的唯一方法是破解cuda_wrap_srcs宏,即。 在以下行中: set(generated_file_basename「$ {cuda_target} _generated _ $ {basename} .ptx」) – 2012-08-24 12:35:44