vs2008一個著名的bug:error C2471: cannot update program database vc90.pdb

轉自:

  http://hi.baidu.com/%BC%C7%C2%BC%B5%C4%BF%D5%BC%E4/blog/item/d9af9b8170d6269bf703a6fb.html



把一個VC6的工程轉換爲VS2008的工程後,編譯找不到而且不能升級vc90.pdb文件的問題解決方法
問題描述:

1>e:\vcomh264net\vcomh\vcomh264net2.0 1.0.25 av\video\videoproc.cpp : 

error C2471: cannot update program database 'e:\vcomh264net\vcomh264net2.0 1.0.25 2008\vcomh264net2.0 1.0.25 av\debug\vc90.pdb'

1>e:\vcomh264net\vcomh\vcomh264net2.0 1.0.25 av\video\videoproc.cpp : 

fatal error C1083: Cannot open program database file: 'e:\vcomh264net\vcomh264net2.0 1.0.25 2008\vcomh264net2.0 1.0.25 av\debug\vc90.pdb': No such file or directory

    爲什麼我把一個VC6的工程轉換爲VS2008的工程後,編譯總是出現找不到而且不能升級vc90.pdb文件的問題。重新編譯了也不行。 
從VC6直接跳到VS2008
這個vs2008一個著名的bug。詳情可以參見https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=309462
官方現有解決方案如下:
       I have found an alternate way for the time beging to avoid C2471 error but it works only in the case of successful release build.
for this click Build menu than Configuration manager than create a new setting from release settings. Change following things in your project settings as :


C\C++ | General | Debug Information format | C7 Compatible (/Z7)
C\C++ | Code Generation | Enable String Pooling | Yes (/GF)
Linker |Debuging |General Debug Info | Yes (/DEBUG)

        after these settings. Rebuild your application. I'm sure you will be able to resolve the pdb updation issue if it is really not hampering your other settings. Hope it will be helpful to you.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章