编译VC静态库中遇到的C2859错误解决方案

今天把原来写的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了下其他人怎么解决这样的问题,结果居然看到有人说去掉预编译头. 这不是我做事的方法,为什么不动下脑筋解决这个问题呢?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章