CUDA_RESOLVE_DEVICE_SYMBOLS

版本 3.9 中新增。

仅 CUDA:在需要时为特定的库目标启用设备链接。

如果设置,这将告诉所需的编译器在库目标上启用设备链接。设备链接是某些 CUDA 编译器在启用 CUDA_SEPARABLE_COMPILATION 时所需的额外链接步骤。通常,设备链接会被延迟到生成共享库或可执行文件时,从而允许多个静态库在被共享库或可执行文件使用时同时解析设备符号。

如果未设置此属性或 CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS,则静态库被视为禁用,而共享库、模块和可执行目标则表现得好像已启用。

如果已定义 CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS,则此属性将初始化为变量的值并覆盖默认行为。

请注意,Object Libraries 不支持设备链接。

例如

set_property(TARGET mystaticlib PROPERTY CUDA_RESOLVE_DEVICE_SYMBOLS ON)