Code Yarns ‍👨‍💻
Tech BlogPersonal Blog

CUDPP: LNK1181 Linker Error

📅 2011-Feb-16 ⬩ ✍️ Ashwin Nanjappa ⬩ 📚 Archive

Problem

** I got an error while building CUDPP 1.1.1** with CUDA 3.2. The linker error occurs on building cudpp_vc90.sln:

LINK : fatal error LNK1181: cannot open input file 'cudart.lib'

Reason

NVIDIA is notorious for frequently changing their environment variables and their paths. I have commented on this before here and here. They have done it again with CUDA 3.2! 😐 cudpp_vc90.vcproj looks for cudart.lib in the directory $(CUDA_LIB_PATH)/../lib. CUDA 3.2 has moved these files to $(CUDA_LIB_PATH).

Solution

In the CUDPP solution, Change the Additional library dependencies in the Visual Studio solution from $(CUDA_LIB_PATH)/../lib to $(CUDA_LIB_PATH).

Note

I have reported this error to CUDPP here. A committer has merged the fix. But, given the fact that the last release was a year ago, it might be a while before this fix appears in a stable release.

Tried with: CUDPP 1.1.1, CUDA 3.2, Visual Studio 2008 and Windows 7 64-bit.