使用動態庫時的配置步驟(windows) - vs2008

---------------------------------------------------------------------------------------------------------------------

歡迎關注 [懶人漫說] 公衆號,分享Java、Android、C/C++ 技術,

包括基礎、自己遇到的問題解決過程。

  

當然如果關注並留言問題的話,我們力所能及的話會幫你解決並回復喲。我們和你一樣,是正在成長的程序員,我們也會分享自己的成長路上的感想,希望可以和你一起努力成長。

 

寫該博客的原因:

           之前一直搞不明白動態庫的使用步驟    故在此作筆記。

              有一個博客我認爲寫得很全面   在這裏推薦一下:  http://www.cnblogs.com/skynet/p/3372855.html點擊打開鏈接

 

 

 

 

        配置步驟:

          一、把用到的dll和lib文件放到工程目錄下

 

          二、把動態庫的頭文件以及頭文件中包含的的非windows的庫文件的頭文件的目錄(這裏用directory.h代替)記下

 

          三、項目  ->  屬性  ->  配置屬性  ->  C/C++  ->  常規  ->  附加包含目錄   ——把directory.h添加上   ——這裏是C/C++項目用到的文件的目錄(非庫文件——其他來源文件)  ——這樣在工程中用到的頭文件就能找到了(否則報 No such file ordirectory)

 

          四、項目  ->  屬性  ->  配置屬性  ->  連接器  ->  輸入  ——在此添加dll文件相對應的lib文件的絕對路徑——.lib文件(至於爲什麼dll會對應一個lib    我也不是很清楚   請自行百度)

 

           五、項目  ->  屬性  ->  配置屬性  ->  連接器  ->  常規  ->  附加庫目錄 ——把工程目錄(包含dll和lib的目錄)加上

 

     好了    我的項目到這就能正常編譯了   

    *注: 僅是個人筆記之用     如有錯誤    還望指出

 

下面是上面的鏈接裏面解釋的動態庫會生成一個lib的原因   在這借用一下了:

無論是靜態鏈接庫還是動態鏈接庫,最後都有lib文件,那麼兩者區別是什麼呢?其實,兩個是完全不一樣的東西。

StaticLibrary.lib的大小爲190KB,DynamicLibrary.lib的大小爲3KB,靜態庫對應的lib文件叫靜態庫,動態庫對應的lib文件叫【導入庫】。實際上靜態庫本身就包含了實際執行代碼、符號表等等,而對於導入庫而言,其實際的執行代碼位於動態庫中,導入庫只包含了地址符號表等,確保程序找到對應函數的一些基本地址信息。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章