天天看點

vcpkg安裝靜态庫/mtd/mt

安裝視訊參考

點我去看視訊,如果你不想浪費時間看視訊,也可以參考下面來

準備工作

  1. 先下載下傳一這工具點我下載下傳,然後注冊登入加速後,勾上git代理再打開控制台代理
    vcpkg安裝靜态庫/mtd/mt
    後面的全部指令行都在這個“控制台代理” 裡面運作

開始幹活

人手工處理c++庫并将它們靜态地連結到項目中絕對是一件痛苦的事情。幸運的是,有像vcpkg這樣的包管理器可以使下載下傳和管理c++依賴項變得更容易。不幸的是(或者幸運的是,這取決于你的視圖)vcpkg使用了開箱即用的動态連結,但是靜态連結你的庫需要一些額外的工作。為了弄清楚如何用vcpkg和Visual Studio靜态連結包,我經曆了很多痛苦,是以我寫這篇教程是為了讓你不必經曆我所經曆的痛苦。在本教程中,我将向你展示如何設定vcpkg,并将其與你的Visual Studio c++項目內建。最後,我将介紹如何設定Visual Studio來使用vcpkg下載下傳的靜态庫,讓我們開始吧!

vcpkg安裝靜态庫/mtd/mt

VCPKG Install and Setup

首先,確定你的機器上已經安裝了git和Visual Studio 2019。在這裡你可以下載下傳git和Visual Studio。

接下來我們要下載下傳vcpkg。為此,你需要通路vcpkg GitHub倉庫。一旦,你将點選綠色的“克隆或下載下傳”按鈕,複制出現的連結。

vcpkg安裝靜态庫/mtd/mt

現在回到你的pigcha的控制台代理,輸入:

git clone https://github.com/microsoft/vcpkg.git

你的輸出應該像這樣:

vcpkg安裝靜态庫/mtd/mt

你現在已經成功下載下傳了vcpkg!是以現在讓我們安裝它并下載下傳一些軟體包!

在指令提示符中進入vcpkg目錄:

cd vcpkg

然後輸入:

bootstrap-vcpkg.bat

你的輸出應該像這樣:

vcpkg安裝靜态庫/mtd/mt

接下來,我們想要将vcpkg內建到我們的Visual Studio安裝中,是以你需要做的就是輸入:

vcpkg integrate install

你的輸出如下所示:

vcpkg安裝靜态庫/mtd/mt

不要介意我現在在一個名為“Projects”的檔案夾中,因為我之前安裝過vcpkg。

下載下傳依賴

到目前為止,你已經做得很好了,讓我們安裝一些軟體包吧!

搜尋軟體包下載下傳輸入:

vcpkg search 包名

例如,讓我們搜尋spdlog庫:

vcpkg安裝靜态庫/mtd/mt

我們找到了spdlog包!現在讓我們下載下傳它。

有兩種方法可以做到這一點。如果你想下載下傳這個包并使用動态連結,你隻需要輸入:vcpkg install spdlog。但是我們不想這樣做,因為我們想為我們想要的平台下載下傳靜态庫。在本例中,我們将下載下傳x64 Windows平台的spdlog。

為此輸入:

vcpkg install spdlog:x64-windows-static

您應該會看到以下輸出:

vcpkg安裝靜态庫/mtd/mt

我們現在已經下載下傳了我們的庫,是以讓我們配置Visual Studio來使用它!

配置 Visual Studio

首先,打開Visual Studio 2019,點選“Create a new project”。

vcpkg安裝靜态庫/mtd/mt

選擇“控制台應用程式”:

vcpkg安裝靜态庫/mtd/mt

輸入項目的名稱并點選“Create”按鈕。

vcpkg安裝靜态庫/mtd/mt

好戲從這裡開始。

因為我們使用的是x64平台,是以我們想做的第一件事就是将我們的項目從預設的x86改為x64。

要做到這一點,将螢幕頂部的下拉菜單從x86改為x64,看起來像這樣:

vcpkg安裝靜态庫/mtd/mt

接下來,轉到解決方案資料總管,點選“檔案夾視圖”圖示,選擇“檔案夾視圖”

vcpkg安裝靜态庫/mtd/mt

你應該看到你的項目解決方案檔案:

vcpkg安裝靜态庫/mtd/mt

單擊清單中的.vcxproj檔案。您将看到一個xml文檔顯示出來。向下滾動一點,直到您看到标記。

vcpkg安裝靜态庫/mtd/mt

在最底部添加以下一行:

<VcpkgTriplet Condition="'$(Platform)'=='x64'">x64-windows-static</VcpkgTriplet>
           

這看起來會根據你決定使用的平台不同,例如,如果你使用win32 x86應用程式,我們會放:

<VcpkgTriplet Condition="'$(Platform)'=='Win32'">x86-windows-static</VcpkgTriplet>
           

事實上,你可以同時使用這兩種方法,但是對于我們的例子,你的檔案應該像這樣:

vcpkg安裝靜态庫/mtd/mt

儲存你的更改并再次點選“檔案夾視圖”圖示并選擇。就我而言,它是 DemoStaticLinking.sln。這是你将看到的結果:

vcpkg安裝靜态庫/mtd/mt

你需要再次加載你的項目,是以左鍵點選第一項,選擇“加載所有項目”,然後點選yes,直到你回到你的主項目。

vcpkg安裝靜态庫/mtd/mt

最後一步是将我們的C運作時環境更改為支援靜态連結的環境。如果不這樣做,在嘗試使用庫時将會遇到連結器錯誤。

左鍵單擊項目解決方案,并在底部選擇屬性或點選

Alt + Enter

一旦彈出對話框,你想去C/ c++ >代碼生成:

vcpkg安裝靜态庫/mtd/mt

如果你看到在頂部的" Configuration: Release “更改運作時庫屬性為” multi - threading (/MT) ":

vcpkg安裝靜态庫/mtd/mt

點選應用。然後将" Configuration: Release “改為” Configuration: Debug “,并将C運作庫改為” multi - threading Debug (/MTd) ":

vcpkg安裝靜态庫/mtd/mt

現在我們完成了!現在我們可以使用vcpkg靜态庫來編譯它們了!

在你的主要cpp檔案(我的是DemoStaticLinking.cpp)添加以下内容:

vcpkg安裝靜态庫/mtd/mt

點選頂部标簽為“Local Windows Debugger”的綠色三角形來運作項目,你應該會得到這樣的輸出:

vcpkg安裝靜态庫/mtd/mt

你做到了!您成功地內建了vcpkg和Visual Studio,并配置了您的Visual Studio項目來連結靜态庫!現在,安裝c++庫并将它們靜态連結到你的項目應該比以前更容易了。我希望本教程對簡化c++開發流程有所幫助。編碼快樂!😃

原文參考:點我

繼續閱讀