I\'m trying to link against a library (libcef_wrapper_dll.lib) that was built with the /MDd flag. My application is build with /MDd and /CLR so should be compatible. The proje
This one worked for me: Project properties -> C/C++ -> Code Generation -> Enable Function Level Linking -> Yes
I had the problem because I had a file with the /clr option that was messing things up. I moved the CLR specific code to a separate file, cleaned, rebuilt and the problem is gone.
If using /MP
or /MDd
with MSBuild, also use the /Zf
compiler option. (See https://docs.microsoft.com/en-us/cpp/error-messages/tool-errors/linker-tools-error-lnk1318 )
Other troubleshooting steps for LNK1318:
Debug Information Format
to /C7
or None
/property:_IsNativeEnvironment=true
Best solution for me has always been to simply kill the symbol server. I have a batch file on my desktop to do this:
@for /F "tokens=2 delims= " %%I in ('tasklist^|findstr /I "mspdbsrv.exe"') do taskkill /F /PID %%I>NUL && echo Process killed.
This is a technical limitation of the VC linker. You should try split your code modules up more. Splitting up libraries also help with extremely long link times.
See if you can successfully build on release mode
Rebuilding the project solved the problem