看板 C_and_CPP 關於我們 聯絡資訊
再相依性的部分有將下載的檔案(ex boost_1_56_0)內部的lib檔全部加到專案裡的連結器的"其他相依性"裡面,如果加入完就會出現無法解析外部符號,如果沒加入相關lib檔則會說缺少boost_xx.lib某個內部的檔案 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.125.46.75 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1450701614.A.3AB.html
stupid0319: boost的版本不對吧 12/21 20:42
LPH66: 我剛才去挖了這個 caffe 來看, 你有把 caffe 的 library 12/22 00:48
LPH66: 加進專案裡嗎?如果他們不只一個 library 全都加進去試試 12/22 00:48
s501082001: https://goo.gl/n6zmx1 我是參考這個網站 12/22 10:43
s501082001: 它boost也是用56的版本 12/22 10:44
s501082001: LPH66 好我試試看,謝謝你 12/22 10:45
s501082001: 我有把caffe專案的lib檔都加進來了 12/22 11:20
s501082001: 抱歉圖片沒辦法上傳,原本要把圖片縮成網址 12/22 11:23
s501082001: 但是錯誤還是一樣,錯誤有可能是缺少lib檔以外 12/22 11:25
s501082001: 的問題嗎? 12/22 11:25
s501082001: 因為如果沒有lib檔的話,錯誤應該是缺少lib檔的錯誤 12/22 11:26
LPH66: 那你重編一次 caffe 再重加一次試試看 12/23 01:12
LPH66: 沒加入該加的 lib 檔不一定會出現缺少 lib 檔的錯誤 12/23 01:12
LPH66: 會有這種錯誤多半是原始碼裡指定了要連結哪個 .lib 但沒有 12/23 01:13
LPH66: 沒有指定的話就只會是個單純的找不到符號的連結錯誤而已 12/23 01:13
LPH66: 噢對了, 編譯時跟你在使用時的 boost 要用同一個 12/23 01:16
s501082001: 目前在系統變數有加BOOST_1_56_0的變數名稱 12/23 11:00
s501082001: 跟變數值C:\local\boost_1_56_0 12/23 11:01
s501082001: 然後裡面有三個專案caffe、test_MNIST跟train_MNIST 12/23 11:03
s501082001: 編譯caffe專案時有成功,編譯另外兩個專案 12/23 11:06
s501082001: 都出現連結錯誤,再相依性的部分我有把caffe資料夾 12/23 11:07
s501082001: 的lib資料夾中Win32 x64的Debug跟Release資料夾 12/23 11:09
s501082001: 全部lib檔都加到"其他相依性"裡面 12/23 11:09
s501082001: C:\deep learning\caffe-vs2013-master\3rdparty\lib\ 12/23 11:10
s501082001: Win32\Debug\leveldb.lib 12/23 11:11
s501082001: 加入絕對路徑給它 12/23 11:12
s501082001: 但是錯誤還是一樣,覺得很奇怪,搜尋過caffe裡面 12/23 11:13
s501082001: 沒有其它的lib檔 12/23 11:13
s501082001: 無法解析的外部符號 "public: __cdecl caffe::Caffe:: 12/23 11:14
s501082001: 這是其中一段相關訊息 12/23 11:17
s501082001: 然後boost是跟提供者一樣的版本 12/23 11:18
s501082001: 抱歉麻煩你看這麼一大段 12/23 11:19
s501082001: 有發現到問題,再編譯test_MNIST專案時先將組態類型 12/23 21:50
s501082001: .exe改成靜態函式庫(.lib)檔然後再編譯就ok了 12/23 21:51
s501082001: 好像是沒有產生出關於test_MNIST的.lib檔出來的關係 12/23 21:52