libmmdd.lib(libmmdd.dll) : error LNK2005: lrint already defined in test.cu.obj NVIDIA CUDA

libmmdd.lib(libmmdd.dll) : error LNK2005: lrint already defined in test.cu.obj NVIDIA CUDA

Greetings,

I am playing around with NVIDIA CUDA technology (v4.2). I have link conflict:

libmmdd.lib(libmmdd.dll) : error LNK2005: lrint already defined in test.cu.obj
libmmdd.lib(libmmdd.dll) : error LNK2005: lrintf already defined in test.cu.obj

using MSVC 2010, ICC XE 13.0.

best,
vdm
.

6 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Greetings,

When I use plain MSVC 2010 (without ICC compilation), I get:

LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
libsndfile.lib(dwvw.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(vox_adpcm.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(g72x_2.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(pcm.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(gsm610.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(ms_adpcm.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(ima_adpcm.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(paf.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(double64.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(alaw.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(ulaw.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(caf.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(xi.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(mat5.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(mat4.obj) : warning LNK4049: locally defined symbol lrint imported
libsndfile.lib(ima_adpcm.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(dwvw.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(vox_adpcm.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(g72x_2.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(ulaw.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(pcm.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(gsm610.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(ms_adpcm.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(xi.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(paf.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(float32.obj) : warning LNK4049: locally defined symbol lrintf imported
libsndfile.lib(alaw.obj) : warning LNK4049: locally defined symbol lrintf imported
  Recorder7_Processor.vcxproj -> c:\vdm\msys\1.0\home\root\Recorder7.1\Recorder7_Processor\x64\Debug\Recorder7_Processor.exe

This is suspicious. It seems my 3rd party library libsndfile is defining "lrint" and "lrintf" functions. This could be the problem when I use ICC.

Any sugestions regarding usage build options of that library/code modification and suggestions what should I search for/change in that 3rd party library build (options)?

Yes, because MSVC hasn't included those std=c99 functions, it's not surprising that a library intended for Visual Studio compatibility might provide its own.  It would be preferable if that library could arrange to link the versions provided by ICL when those are present.  Perhaps you could run library manager and separate them from that library.

Quote:

tcprince wrote:

Yes, because MSVC hasn't included those std=c99 functions, it's not surprising that a library intended for Visual Studio compatibility might provide its own.  It would be preferable if that library could arrange to link the versions provided by ICL when those are present.  Perhaps you could run library manager and separate them from that library.

OIC. Thanks. Though I feel, this is a cosmetic issue, rather than a bug, that can be resolved easily. But much more: it is problem of mixing different C standards. Thank you for make me see clearly what is happening.

Hello, TimP,
what's the "library manager"? looks like a very useful tool. Where can I get it?
Thank you very much.

Leave a Comment

Please sign in to add a comment. Not a member? Join today