I get linker errors:
nvlink error : Undefined reference to ‘cudaGetParameterBufferV2’ in ‘CMakeFiles/cuda_separable_compilation_test.dir/main.cu.o’
nvlink error : Undefined reference to ‘cudaLaunchDeviceV2’ in ‘CMakeFiles/cuda_separable_compilation_test.dir/main.cu.o’
nvcc version: Cuda compilation tools, release 9.2, V9.2.88
If not cross compiling everything works fine.
I am on Ubuntu 16.04 with cuda 9.2 istalled from dripepx2 PDK5, which contains target files for x86_64 and aarch64 architecture.
In the repo there is a cmake toolchaim file I used for cmake configure, like:
cmake … -DCMAKE_TOOLCHAIN_FILE=$PWD/…/aarch64-linux-gnu.cmake
Could you please help me to resolve this issue? What do I miss?
Dear @ericnathanmiller@csaba.sipos
Do you have any issues with CUDA cross compilation? If so, please include your code as a CUDA sample inside /usr/local/cuda/samples and make changes in Makefile. Please check cross compile using make TARGET_ARCH==aarch64 command (please see CUDA Samples :: CUDA Toolkit Documentation for more details)
@E@nvlink error : Undefined reference to 'cudaGetParameterBufferV2' in 'cuda_quad_tree.o'
@E@nvlink error : Undefined reference to 'cudaLaunchDeviceV2' in 'cuda_quad_tree.o'
I ran nm -A through all cuda libraries, I am not able to find which the library containing the cudaLaunchDeviceV2 nor cudaGetParameterBufferV2symbols.
Whenever I try compiling and linking without dynamic parallelism it works.
Dear @lucasm70i1,
Please file a new topic with details about the issue. Also, please check if you are able to cross compile the shipped CUDA samples first.