搭建可隨意更改路徑的VS工程 以ASIFT演算法為例

2021-07-29 09:40:12 字數 1892 閱讀 7647

但實際上,雖然工程是跑通了,但是裡面還包含了許多我們不熟悉的或者不需要的東西,尤其是一些路徑設定的問題,對工程裡面的設定不是很清楚。所以,筆者自己重新建立了乙個新的空的工程,然後依次將所需要的檔案新增到工程裡面,不需要的內容排除掉,這樣一來,新的asift工程的結構和內容都比較清晰,方便大家閱讀理解。

下面筆者將其實現過程進行介紹:

一、環境為vs2012,win7 64位

二、新建空的工程,設定好工程放置路徑:e:\vs_projects\asift以及工程名asift.sln。並將解決方案平台換成x64,換的方法請參照前一篇博文。

三、將所需要的source原始檔、head標頭檔案、include包含檔案(工程中要新增的外部依賴項檔案)、lib檔案、dll檔案在工程的一級目錄下建立,內容均從前一篇博文裡面已經生成好的demo_asift工程下裡面拷貝過來,不需要的不用拷貝。

四、開啟asift.sln,按下面的方式新增原始檔和標頭檔案,結果如下:

五、設定三個路徑:包含目錄、庫目錄、附加依賴項

包含目錄:專案--屬性--vc++目錄--包含目錄,裡面新增include、source、head三個資料夾的檔案路徑,用相對路徑..\表示。

庫目錄:專案--屬性--vc++目錄--庫目錄,裡面新增lib資料夾下的檔案路徑,現在是debug模式,

故新增debug下的lib檔案,

用相對路徑..\表示。

附加依賴項:專案--屬性--鏈結器--輸入--附加依賴項,裡面新增lib資料夾下的檔名稱。

注意,這個工程不涉及dll的設定,如果有的工程需要設定dll路徑,有三種方法供大家嘗試,

第一,將dll拷貝到

c:/windows/system32下面,第二,將dll拷貝到工程的debug目錄下面,第三,在工程一級目錄下建立dll資料夾,然後將dll

檔案拷入,並在專案--屬性--除錯--環境,中新增該dll資料夾目錄。

六、轉到debug模式下,按f7生成解決方案,裡面會涉及到一些細節的#include問題,把路徑修改好即可。

繼續f7生成解決方案,

會出現如下錯誤:

這是在main中找到read_png_f32_gray函式,f12後發現只能找到函式宣告,找不到實現函式,這可能由兩種情況導致:

1.*.lib未新增到庫中。

2.對應.c檔案或.h檔案未從外部依賴項中載入。

通過檢查,png.lib確實已經新增了,然後將io_png.c檔案按照第四步的方法載入到工程原始檔中,再f7,執行成功,最終結果如下:

OS X Lion發現可隨意更改使用者密碼漏洞

據外國 報導,一家專注於計算機安全領域的部落格defense in depth日前在os x lion上發現了乙個安全漏洞,一名黑客稱 雖然沒有root許可權的使用者不能夠直接訪問shadow檔案,但是lion仍然為他們提供瀏覽密碼的雜湊資料 也就是說,lion的這項指令能夠讓任何其它人使用乙個簡單...

樹形結構生成可隨意擴充套件的配置系統的實現

開發經驗回顧,我們會發現,我們解決問題的思路都是有慣性思維引導的。好的思維方式,讓我們梗全面的看清事物的本質。卡!跑題了。資料,我們經常以修改的頻率來定義為相對動態和相對靜態。其實,大多數業務,資料在一定的時間內都是相對靜止的 不變的 如果,這些資料不是針對個人的 個性化資料 話,說明資料在一定時間...

編譯安裝的mysql如何更改檔案路徑

場景 小張在巡檢時發現公司一台資料庫經常寫不入資料,於是登入資料庫所在的主機一看,原來是資料庫對應的50g磁碟分割槽滿了,而主機上還有另外乙個500g的磁碟分割槽沒在用,於是小張請示完領導後,準備將資料庫的日誌等佔空間的檔案位置更換到更大的那個分割槽。ps 本環境為單機環境,主備環境或主主環境操作會...