在Visual Studio中使用.lib和.dll的環境搭建

1 靜態庫和動態連接庫的區別

動態連接庫是在運行的時候被調用的,靜態庫在連接的時候被連接到最終生成的應用程序(.exe)中
靜態庫須要用到的文件 (.lib .h)
頭文件(.h)提供接口,庫文件(.lib)提供實現c++

動態連接庫須要用到的文件 (.dll .lib .h)
頭文件(.h)提供接口,庫文件(.lib)僅提供索引,動態連接庫文件(.dll)提供實現函數

2 尖括號<>和雙引號""引用.h文件的區別

尖括號<>會從VC++包含目錄中尋找.h文件,通常是用於調用第三方庫

雙引號""會從項目配置屬性中c/c++的附加包含目錄尋找.h文件,通常是用於尋找工程內的.h文件測試

目錄

Visual Studio項目環境配置

一. 靜態庫環境配置

1.1 添加靜態庫對應的頭文件所在目錄

1.1.1 使用尖括號<>引用頭文件的配置
右鍵項目->屬性->配置屬性->VC++目錄

在這裏插入圖片描述
點擊包含目錄,點擊右邊的下拉箭頭,點擊編輯,添加新的項,手動輸入附加庫頭文件的路徑spa

在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述
點擊肯定保存,這樣就能保證咱們能用<>引用咱們想要使用的庫的頭文件了3d

1.1.2 使用雙引號引用頭文件的配置
要使用雙引號""引用項目中的頭文件的話,在配置屬性->c/c++->附加包含目錄中添加頭文件所在路徑便可

在這裏插入圖片描述
在這裏插入圖片描述
肯定,完成配置調試

1.2 添加靜態庫所在目錄

和添加包含目錄同理,點擊庫目錄,點擊右邊的下拉箭頭,編輯,添加靜態庫所在目錄

編輯庫目錄添加靜態庫所在路徑
也能夠在配置屬性->連接器->常規->附加庫目錄中添加庫所在路徑blog

在這裏插入圖片描述

1.3 添加附加依賴項

右鍵項目->屬性->配置屬性->連接器->附加依賴項->編輯

添加依賴的lib文件名索引

在這裏插入圖片描述

在這裏插入圖片描述
到此位置lib的配置就結束了接口

1.4 測試以及常見錯誤

  1. 試着引用一下glfw庫,沒有出現紅線說明咱們的頭文件包含目錄沒問題了
    在這裏插入圖片描述
  2. 跑一下程序,若是出現LNK1104,說明庫目錄出了問題
    在這裏插入圖片描述
  3. 出現LNK2019 沒法解析的外部符號XXXXX,該符號在函數XXX被引用
    在這裏插入圖片描述
    這種狀況就是沒有添加附加依賴項致使的
    總結一下配置靜態庫可能會出現的問題

二. 動態連接庫環境配置

動態連接庫能夠在運行時被使用,調用動態庫須要用到 .dll .lib .h三個文件,**其中.lib和.h文件的配置方式和靜態庫同樣**,就不從新說一次了

2.1 設置.dll的環境

關鍵的一步是在項目的調試環境中添加.dll文件所在路徑 右鍵項目->配置屬性->調試->環境->編輯

在這裏插入圖片描述
輸入PATH=附加庫的路徑1;附加庫的路徑2;附加庫的路徑3;…
每一個路徑用分號隔開
在這裏插入圖片描述
點擊肯定,保存

梳理一下動態連接庫環境配置的流程

  1. 添加頭文件(.h)所在路徑到VC++的包含目錄或者項目配置屬性c/c++的附加包含目錄中
  2. 添加靜態庫(.lib)所在路徑到VC++庫目錄或者連接器的附加庫目錄中
  3. 添加附加依賴項到連接器的附加依賴項中
  4. 添加動態連接庫(.dll)所在路徑到項目調試環境中
相關文章
相關標籤/搜索