fatal error LNK1103: debugging information corrupt; recompile module

編譯程序時,如果涉及到版本問題,有時會出現這樣的錯誤:
fatal error LNK1103: debugging information corrupt; recompile module

在網上搜索了幾種辦法:
(一):
這個錯誤產生的原因是:
2003年2月的SDK是支持VC6的最後一版,在此之後的就都是使用VC7/VC8來開發的了。
隨着VC7/VC8中新的debug信息格式和一些安全檢查機制的導入,在VC6上使用這些庫的Debug版本的時候
就會產生如題的鏈接錯誤。具體而言,你可能在VC6上使用了XP SP2,Windows 2003或者Windows 2003 R2
版本的SDK。

解決辦法:
1.用Release版編譯,不過這樣就沒法調試了。
2.到Tool -> Options -> Directories(以VC6.0爲例),將SDK的順序放到最下邊或者直接刪掉較新SDK
   的Directories:包括Include files和Library files。
3.如果你必須使用SDK中的新特性,那麼找一個2004年之前的SDK吧。
   這裏是最後一版支持VC6的SDK的下載地址:
   http://www.microsoft.com/msdownl ... pdate/psdk-full.htm
4.方便的話,乾脆遷移到VC7/VC8。

(二):
Linking...
   Creating library Debug/xxx.lib and object Debug/xxx.exp
uuid.lib(comcat.obj) : fatal error LNK1103: debugging information corrupt; recompile module
Error executing link.exe.

出現環境 xp sp2 + 最新 sdk + vc6 +vc7

出現此錯誤 位 vc6 下編譯,問題出來 lib 和 link.exe 版本不合
查看 lib 設置,將 sdk 移動到最後,
編譯通過。

看來 xp 的 sdk 已經默認的向 vc.net 靠攏了

(三):
今天使用windows server 2003的SDK編譯工程,出現了uuid.lib(docobj_i.obj) : fatal error LNK1103: debugging information corrupt; recompile module的錯誤。我的解決方法是用VC6.0自帶的uuid.lib覆蓋windows server 2003SDK的uuid.lib。你可以試試。記得先備份哦。

發佈了29 篇原創文章 · 獲贊 3 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章