为Linux、Mac OS和Windows发布一个C++库管理器:VCPKG

在微软,我们愿景的核心是“任何开发者、任何应用程序、任何平台”,我们致力于为您提供最高效的开发工具和服务,在所有平台上构建您的应用程序。有鉴于此,我们今天非常高兴地宣布vcpkg在Linux和MacOS上的可用性。这使您可以在两个新平台上立即访问C++库的VCPKG目录,这与您今天在Windows和UWP上熟悉的相同简单步骤。

null

Vcpkg自2016年在CppCon上发布以来,已经取得了长足的进步。从仅有的20个库开始,我们在过去的19个月中看到了惊人的增长,现在有900多个库和功能可用。所有的功劳都归功于 我们惊人的社区 .

到目前为止,在您给我们的反馈中,Linux和Mac支持是到目前为止要求最多的特性。因此,今天我们看到VCPKG到达更广泛的社区,并促进跨平台访问更多C++库,这让我们感到兴奋。我们今天邀请您尝试vcpkg,无论您的目标是Windows、Linux还是MacOS。

要了解有关在Windows上使用vcpkg的更多信息,请阅读上一篇文章 如何在Windows上使用vcpkg .

在Linux和Mac上使用vcpkg

Vcpkg工具现在与Linux、Mac和其他POSIX系统兼容。只有通过几个出色的社区成员的贡献,这才有可能实现

在写这篇博文的时候,超过350个库可用于Linux和Mac,我们预计这个数字会迅速增长。我们目前每天都在ubuntults16.04/18.04上进行测试,在Arch、Fedora和FreeBSD上都取得了成功。

入门:

1)      克隆vcpkg repo: git克隆https://github.com/Microsoft/vcpkg

2) 引导vcpkg:/ 引导-vcpkg.sh

3)      构建vcpkg后,可以使用以下语法构建任何库:

vcpkg安装sdl2

这将安装sdl2:x64linux(x64static是linux上的默认和唯一选项)

结果(.h,.lib)存储在同一文件夹树中,请在生成系统配置中引用此文件夹。

4)      使用生成的库

  1. 如果您使用CMake作为生成系统,那么您应该使用CMakeu TOOLCHAINu FILE使库与“findu package()”一起可用。例如。: “制作…”-DCMAKEu TOOLCHAINu FILE=vcpkg/scripts/buildsystems/vcpkg.cmake“

  1. 您应该引用包含标头的vcpkg文件夹(vcpkginstalledx64 linuxinclude)和包含.lib的文件夹(vcpkginstalledx64 linuxlib),以便能够使用生成的库构建项目。

图片[1]-为Linux、Mac OS和Windows发布一个C++库管理器:VCPKG-yiteyi-C++库

图片[2]-为Linux、Mac OS和Windows发布一个C++库管理器:VCPKG-yiteyi-C++库

使用vcpkg从Windows定位Linux 通过WSL

由于WSL是一个Linux系统,所以我们将像使用Linux一样使用WSL。一旦配置正确,就可以从Windows机器生成Linux二进制文件,就好像它们是从Linux机器生成的一样。遵循与在Linux上安装相同的说明。看看怎么做 设置WSL 在Windows 10上,以及 配置它 使用visualstudio扩展Linux。

图片[3]-为Linux、Mac OS和Windows发布一个C++库管理器:VCPKG-yiteyi-C++库

如上面的屏幕截图所示,vcpkg目录可以在Windows和WSL之间共享。在本例中,sdl2和sqlite3是从WSL(用于Linux的二进制文件)构建的;sqlite3也是为Windows(windowsdll)构建的。

最后

在Linux或Mac上安装vcpkg,并在您的跨平台项目中试用,让我们知道如何改进它,以及您的跨平台使用场景是什么。

一如既往,您的反馈和评论对我们来说非常重要,请在 github 或者直接联系我们vcpkg@microsoft.com 如有任何意见和建议,请花一点时间完成我们的调查

© 版权声明
THE END
喜欢就支持一下吧,技术咨询可以联系QQ407933975
点赞0 分享