FindCUDA: Fix missing librt on Linux when using static cuda runtime.
Commit 7229ae72
(FindCUDA: Refactor Android(Tegra) support, 2016-04-19)
changed the logic to only add librt to the link line for CUDA versions
6.5 and older. However, newer versions of CUDA still require librt.
This commit is contained in:
parent
aab1f6e984
commit
1aa5c1bec8
|
@ -818,12 +818,13 @@ if(CUDA_USE_STATIC_CUDA_RUNTIME)
|
|||
else()
|
||||
unset(CMAKE_THREAD_PREFER_PTHREAD)
|
||||
endif()
|
||||
endif()
|
||||
if (UNIX AND NOT APPLE AND CUDA_VERSION VERSION_LESS "7.0")
|
||||
# Before CUDA 7.0, there was librt that has things such as, clock_gettime, shm_open, and shm_unlink.
|
||||
find_library(CUDA_rt_LIBRARY rt)
|
||||
if (NOT CUDA_rt_LIBRARY)
|
||||
message(WARNING "Expecting to find librt for libcudart_static, but didn't find it.")
|
||||
|
||||
if(NOT APPLE)
|
||||
#On Linux, you must link against librt when using the static cuda runtime.
|
||||
find_library(CUDA_rt_LIBRARY rt)
|
||||
if (NOT CUDA_rt_LIBRARY)
|
||||
message(WARNING "Expecting to find librt for libcudart_static, but didn't find it.")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
|
Loading…
Reference in New Issue