為什麼這篇visual studio執行c鄉民發文收入到精華區:因為在visual studio執行c這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者VictorTom (鬼翼&娃娃魚)看板C_and_CPP標題Re: [問題] 請問關於...
※ 引述《slgn0129 (緣由天定分在人為)》之銘言:
恕刪
: 程式跑出來的錯誤結果:
: build的log
: 正在編譯...
: DrawModel.c
: Initialize.c
: InitModelData.c
: MyTextfileIOTool.c
: c:\goodluck\simplefboanddepth\mytextfileiotool.c(11) :
: warning C4996: 'fopen' 已經宣告為取代
: c:\program files\microsoft visual studio 8\vc\include\stdio.h(234) :
: 請參閱 'fopen' 的宣告
: 訊息: 'This function or variable may be unsafe.
: Consider using fopen_s instead. To disable deprecation,
: use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
: c:\goodluck\simplefboanddepth\mytextfileiotool.c(21) :
VC認為fopen這個函數不安全, 而宣告它為deprecate....
也就是考慮將來的版本不再提供這個函數的意思....
並告訴你如果你不care這個warning, 如何disable它....
: warning C4267: '=' : 將 'size_t' 轉換為 'int',資料可能遺失
: Simple_FBO.c
: 正在產生程式碼...
: 正在將資訊清單編譯至資源...
: 正在連結...
: esUtil_d.lib(esUtil_TGA.obj) : warning LNK4099:
: 找不到 PDB 'vc90.pdb' (有 '..\esUtilLite\Lib\esUtil_d.lib'
: 或位於 'c:\GoodLuck\SimpleFBOandDepth\Debug\vc90.pdb'),
: 當做沒有偵錯資訊,連結物件
: esUtil_d.lib(esUtil_win32.obj) : warning LNK4099: 找不到 PDB 'vc90.pdb' (有 '..\esUtilLite\Lib\esUtil_d.lib' 或位於 'c:\GoodLuck\SimpleFBOandDepth\Debug\vc90.pdb'),當做沒有偵錯資訊,連結物件
: esUtil_d.lib(esShader.obj) : warning LNK4099: 找不到 PDB 'vc90.pdb' (有 '..\esUtilLite\Lib\esUtil_d.lib' 或位於 'c:\GoodLuck\SimpleFBOandDepth\Debug\vc90.pdb'),當做沒有偵錯資訊,連結物件
: esUtil_d.lib(esShapes.obj) : warning LNK4099: 找不到 PDB 'vc90.pdb' (有 '..\esUtilLite\Lib\esUtil_d.lib' 或位於 'c:\GoodLuck\SimpleFBOandDepth\Debug\vc90.pdb'),當做沒有偵錯資訊,連結物件
: esUtil_d.lib(esTransform.obj) : warning LNK4099: 找不到 PDB 'vc90.pdb' (有 '..\esUtilLite\Lib\esUtil_d.lib' 或位於 'c:\GoodLuck\SimpleFBOandDepth\Debug\vc90.pdb'),當做沒有偵錯資訊,連結物件
這些warning只是告訴你它找不到某些object file的某些.pdb檔....
在VC裡這些檔案是用來提供debug/trace code用的information....
: esUtil_d.lib(esUtil.obj) : warning LNK4099: 找不到 PDB 'vc90.pdb' (有 '..\esUtilLite\Lib\esUtil_d.lib' 或位於 'c:\GoodLuck\SimpleFBOandDepth\Debug\vc90.pdb'),當做沒有偵錯資訊,連結物件
: 正在嵌入資訊清單...
: 結果
: 已將建置記錄儲存於 "file://c:\GoodLuck\SimpleFBOandDepth\Debug\BuildLog.htm"
: InitOpenGLES - 0 個錯誤,8 個警告
: debug 會直接跳出錯誤視窗
: 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
: VS2005
: 有問題的code: (請善用置底文標色功能)
: 原本可以跑 應該不是code的問題吧0.0
: 原本想說是不是沒安裝什麼 所以就四處亂安裝
: 但是也沒有效果
: 麻煩各位前輩幫忙看一下了
: 卡關卡很久 但是都沒頭緒><
扣除掉上面那些warning, 你的esUtil_d.lib有對應的.dll嗎??
個人推測是不是有缺.dll檔沒有copy到, 或者linking方式的問題@_@"
可能的原因, esUtil_d.lib是用VC2008(VC9.0)build的....
但是產生binary時, VC提供的library是用dynamic link的....
而你如果沒有裝VC2008只有VC2005的話....
就會發生找不到VC9的.dll或.dll不一致的狀況....
找不到VC#.dll的問題板上可以搜尋一下有討論過解法....
不外乎裝VC# redist, 或者用static link重編binary....
再不然就是找到需要的VC#相關.dll全部copy到同folder:)
==
以上, 純屬小弟無責任推測....<(_ _)>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.66.243.96
※ 編輯: VictorTom 來自: 61.66.243.96 (11/11 11:54)