问题:使用VC2008正常编译成功,使用incredibuild并行编译失败,出现Fatal error C1033: cannot open program database
解决:
1.防火墙---(最坑爹的- -!)
来自 stackoverflow (BTW, stackoverflow是个神奇的地方,各种奇葩的问题都有热心的解答)
简单地说,杀毒软件一般会监控pdb文件生成和写入修改( touching the pdb file on write),解决方法:对项目输出目录添加例外(Exceptions) 或者,删了杀毒软件:D。( 把输出目录的只读属性去掉吧,如果有的话)
2. 共享冲突,援引: http://graphics.ethz.ch/~peterkau/coding.php
有可能在解决方案中的两个项目输出写入相同的目录 (例如 ' xxx\debug'),使用incredibuild等并行编译软件时,当并行编译数目通常大于1,由于项目依赖关系不同的线程可能会尝试,同时访问相同的文件共,导致共享冲突,所以排除这种情况