今天把原来写的max插件与新引擎整合下, MAXSDK又恶心了一次. 居然有core.lib这种第三方库导致与我的core.lib链接冲突, 真是霸道, 没办法, 只有我让步,我改名.
之后,发现每次即便每次完整编译完成,开始调试时,所有工程都会重复编译一次,Clean后,再编译,报了 一个vc90.pdb有关的C2859错误.
error C2859: x:\XXX\vc60.pdb is not the pdb file that was used when this precompiled header was created, recreate the precompiled header.
mschart.cpp
大概意思就是预编译头问题. 尝试着改名等,都不能完全解决, 干脆在Configuration Properties | C/C++ | Output Files里的Program Database File Name改为$(IntDir)\$(ProjectName).pdb, 也就是让 静态库pdb不是默认的vc90.pdb,而是跟随项目名称,瞬间, 问题解决,不会反复出现重编译问题.
写本文之前,Google了下其他人怎么解决这样的问题,结果居然看到有人说去掉预编译头. 这不是我做事的方法,为什么不动下脑筋解决这个问题呢?