Hi everyone, I'd like to ask how to use find_package for PCL (http://pointclouds.org/) and CUDA in the same build. I get a fatal error from NVCC (see below) if i try. To reproduce create a CMake file: cmake_minimum_required(VERSION 3.4 FATAL_ERROR) find_package(PCL 1.8 REQUIRED) find_package(CUDA "8.0" REQUIRED) cuda_add_library(cuda STATIC main.cu) # content of main.cu does not matter Run cmake and compile with Visual Studio 2015. For me this results in: ------ Build started: Project: cuda, Configuration: Release x64 ------ Building NVCC (Device) object CMakeFiles/cuda.dir/Release/cuda_generated_main.cu.obj CMake Warning (dev) in cuda_generated_main.cu.obj.cmake: Syntax Warning in cmake code at <path>/CMakeFiles/cuda.dir/cuda_generated_main.cu.obj.cmake:79:146 Argument not separated from preceding token by whitespace. This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) in cuda_generated_main.cu.obj.cmake: Syntax Warning in cmake code at <path>/CMakeFiles/cuda.dir/cuda_generated_main.cu.obj.cmake:79:402 Argument not separated from preceding token by whitespace. This warning is for project developers. Use -Wno-dev to suppress it. nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified CMake Error at cuda_generated_main.cu.obj.cmake:207 (message): Error generating <path>/CMakeFiles/cuda.dir//Release/cuda_generated_main.cu.obj C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" exited with code 1. I found this page (http://idav.ucdavis.edu/~anjul/cudaErrors.htm) in regard to the nvcc error, it says to avoid using quotations in the nvcc include directories. In my case the ${CUDA_INCLUDE_DIRS} variable does not contain any quotations marks. I posted to PCL user's mailing list a while ago but had no responses (http://www.pcl-users.org/Including-pcl-in-CMake-causes-error-if-also-including-cuda-td4042597.html). FWIW, I had the same error when using PCL 1.7, CUDA 8.0 and Visual Studio 2012.
Up to now I'm stuck with separating CUDA and PCL in my source. Since that is getting more and more inconvenient, I'd be grateful for any hint how to resolve this. Best regards, Peter -- 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: http://public.kitware.com/mailman/listinfo/cmake