win10 + vs2017 + vcpkg —— VC++ 打包工具

vcpkg 是微軟 C++ 團隊開發的在 Windows 上運行的 C/C++ 項目包管理工具,能夠幫助您在 Windows 平臺上獲取 C 和 C++ 庫.git

vcpkg 自身也是使用 C++ 開發的 (而其餘的 C++ 包管理大多並非 C++ 開發的),而且 vcpkg 可以幫助用戶在 Visual Studio 中,更好的使用這些安裝好的庫.github

vcpkg 整合了 git,構建系統整合的 CMake,而絕大多數的 C++ 項目均可以直接或者間接的方式使用 CMake建立原生項目文件並構建.shell

安裝:

克隆代碼:bootstrap

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

打開Windows Powershell,windows

cd D:\Develop\GitOthers\vcpkg
./bootstrap-vcpkg.bat

設定user-wide整合(初次執行須要管理員權限)ide

./vcpkg.exe integrate install

設置環境變量

默認編譯庫類型(32位仍是64位) VCPKG_DEFAULT_TRIPLET, 可設置的值以下:工具

PS > ./vcpkg help triplet
Available architecture triplets:
  arm-uwp
  x64-uwp
  x64-windows-static
  x64-windows
  x86-uwp
  x86-windows-static
  x86-windows

vcpkg命令

打開Windows PowerShellui

 查看幫助url

 ./vcpkg --help
Commands:
  vcpkg search [pat]             查找包 Search for packages available to be built
  vcpkg install <pkg>            安裝包 Install a package
  vcpkg remove <pkg>            卸載包 Uninstall a package.
  vcpkg remove --purge <pkg>     卸載並刪除包(包升級時須要) Uninstall and delete a package.
  vcpkg list                     列出已安裝包 List installed packages
  vcpkg update                   列出須要升級的包 Display list of packages for updating
  vcpkg hash <file> [alg]        對文件進行Hash(默認是SHA512) Hash a file by specific algorithm, default SHA512

  vcpkg integrate install         Make installed packages available user-wide. Requires admin privileges on first use
  vcpkg integrate remove          Remove user-wide integration
  vcpkg integrate project         Generate a referencing nuget package for individual VS project use

  vcpkg edit <pkg>                Open up a port for editing (uses %EDITOR%, default 'code')
  vcpkg import <pkg>              Import a pre-built library
  vcpkg create <pkg> <url>
             [archivename]        Create a new package
  vcpkg owns <pat>                Search for files in installed packages
  vcpkg cache                     List cached compiled packages
  vcpkg version                   Display version information
  vcpkg contact                   Display contact information to send feedback

Options:
  --triplet <t>                   Specify the target architecture triplet.
                                  (default: %VCPKG_DEFAULT_TRIPLET%, see 'vcpkg help triplet')

  --vcpkg-root <path>             Specify the vcpkg root directory
                                  (default: %VCPKG_ROOT%)

示例:

刪除庫(VCPKG_DEFAULT_TRIPLET指定位)
./vcpkg remove zlib libiconv

刪除32位庫
./vcpkg remove zlib:x86-windows libiconv:x86-windows

刪除64位庫
./vcpkg remove zlib:x64-windows libiconv:x64-windowsspa

其它:

{VCPKG_ROOT}\triplets\x64-windows.cmake 能夠在這裏進行環境變量設置

set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_PLATFORM_TOOLSET v140)

參考:

1. Vcpkg使用指南-簡書

相關文章
相關標籤/搜索