Porting our cmake build system to use enable_language(CUDA). This is a complex
computational application that make use of many libraries.  Upon doing this,
add_executable ended up generating a link line of 9455 chars, causing Windows
cmd to fail to execute it.  In addition, the final link used nvcc instead of
cl, as used to be the case, even though the one and only source file is a cxx
file.

Had a similar problem in creating shared libraries.

So my questions are:

1. How can I force the use of link.exe instead of nvcc.exe with enable_language(CUDA)?

2. If that does not solve the problem of long link lines, how can I solve that with an external file specifying the link, as is done without enable_language(CUDA)?


Thanks....John Cary

PS: In case anyone finds this of use...

a) I had to remove cudart_static from
CMAKE_CUDA_IMPLICIT_LINK_LIBRARIES to get my windows shared libs to build, as
they were linking to plain old cudart.

b) To get reconfiguring to work, I had put

    set(CMAKE_CUDA_COMPILER_ID_RUN FALSE) # Workaround
before
include(${CMAKE_ROOT}/Modules/CMakeDetermineCUDACompiler.cmake)

to get auto-reconfiguring to work.



--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake

Reply via email to