"File contains invalid .pdata contributions" when building 64-bit dll
I am currently migrating from 32-bit to 64-bit and encountering a link error when attempting to build a 64-bit managed C++ dll that links to an unmanaged C++ .lib file that I also built:
LNK1223: invalid or corrupt file: file contains invalid .pdata contributions
So far, I have found that this error should only occur while building for RISC machines, but this is not the case in my situation. Does anyone know about this error and the possible issues that might cause it?
Addition: The unmanaged C++ libs are being compiled with the Intel compiler, 开发者_开发问答while the managed DLL is being built using the Microsoft compiler.
Addition #2: The dll compiles just fine when the lib has been compiled using the Microsoft compiler. This does not explain why the compiler even looks at the lib's .pdata
When I migrated my unmanaged project from vs2010 to vs2012, I met the LNK1223 error too.
I fixed it by removing compiler flag /GL.
Hope this method suite for you situation.
精彩评论