After compiling CUDA CORSS with the environment target below, the size of the generated object file is different from the size of the compiled object file on the target board is different from the size of the compiled object file, and it doesn’t work.
To troubleshoot the issue, I compared the target and host environments and found that the build versions of nvcc are different.
target nvcc :
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Sun_Oct_23_22:16:07_PDT_2022
Cuda compilation tools, release 11.4, V11.4.315
Build cuda_11.4.r11.4/compiler.31964100_0
host nvcc :
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Mon_Oct_11_21:27:02_PDT_2021
Cuda compilation tools, release 11.4, V11.4.152
Build cuda_11.4.r11.4/compiler.30521435_0
The nvcc version used by target is 11.4.315,
host is 11.4.152, and cuda-nvcc-cross-aarch64-11-4 installed on host is 11.4.315.
cuda-nvcc-cross-aarch64-11-4/stable,now 11.4.315-1 all [installed,automatic]
I think unifying the host’s NVCC to 11.4.315 will solve the problem, but the deployed package does not exist.
Is there any way to get the package?
If I can’t get it, I would like to know other solutions.
Does the binary can run normally on the target?
If yes, is this issue only related to the binary size?
If not, could you share what kind of error you met with us?
The cross compiled binaries are running in target.
As far as I can find, there is nothing unusual about the situation other than the difference in binary size.
Also, there are no error messages at all.