编译xxx动态库
vs2008已经打了sp1补丁
x64|release可以编译链接通过
win32|debug可以编译链接通过
win32|release编译链接不通过
原因:
引用库不一致,部分库使用的是带sp1补丁的编译器编译,部分是不带sp1补丁的编译器编译。
解决方法:
查找所有引用的库文件,确定所有库编译环境一致(第三方库较为麻烦)。
引用的库文件使用不同的编译器编译会导致该问题,要么所有的库使用没有sp1补丁的编译器编译,
要么使用有sp1补丁的编译器编译。
msdn解决方法
http://msdn.microsoft.com/en-us/library/ms173554(v=vs.80).aspx
Fatal Error C1047
Error Message
The object or library file 'file' was created with an older compiler than other objects; rebuild old objects and libraries
C1047 is caused when object files or libraries built with /LTCG are linked together, but where those object files or libraries are built with different versions of the Visual C++ toolset.
This can happen if you begin using a new version of the compiler but do not do a clean rebuild of existing object files or libraries.
To resolve C1047, rebuild all object files or libraries.