fatal error LNK1201:寫入程序數據庫“***.pdb”時出錯;請檢查是否是磁盤空間不足、路徑無效或權限不夠
最近用opencv2.4.10、vs2010做開發經常遇到這個問題,經百度發現大部分是vs自己的問題
解決辦法1:打開工程屬性,c/c++,常規,調試信息格式,改成C7兼容(/Z7)。(我用的這種)
解決辦法2:把使用pdb文件的處於調試或運行狀態下的vs.net停掉即可。
上面的錯誤在 MSDN的解釋如下:
寫入程序數據庫“filename”時出錯;請檢查是否是磁盤空間不足、路徑無效或權限不夠
LINK 未能寫入輸出文件的程序數據庫 (PDB)。
可能的原因 :
文件已損壞。刪除 PDB 文件然後重新鏈接。
沒有足夠的磁盤空間寫入文件。
可能由於網絡問題,驅動器不可用。
調試器在您試圖鏈接的程序上是活動的。
工作中,最容易出現的原因是最後一條:“調試器在您試圖鏈接的程序上是活動的。”
什麼意思呢,就是複雜項目開發中,有很多個項目,你調用着我的,我使用着他的;
你的和他的又在同一個解決方案下,這在由多個dll,多個exe組成的系統中最容易出現。
即:當你編譯某一項目時,該項目的pdb文件正被另一處於調試狀態
下的編譯器所使用,編譯無法向項目pdb文件寫入數據,無奈之下,編譯器只好
向你報LNK1201錯誤請求你協助解決。
轉自:http://blog.csdn.net/zhghost/article/details/5436978