




资源介绍
视频数量:38个
总时长:1小时50分
课程介绍:
掌握vcpkg:微软C与C++包管理器完全指南
做C++项目的人大概都有过这种经历:想用个好用的第三方库,结果光是配置环境就得折腾半天。下载源码、编译、处理依赖冲突、头文件路径、链接库路径……光是让一个简单的库跑起来,可能就要花掉大半天。等项目里要用到十几个库的时候,光是管理这些依赖就能让人头皮发麻。
如果你也被这些问题折磨过,那么vcpkg就是来救你的。
vcpkg是微软开发的一款开源C/C++包管理器,它做的事情很简单:把那些繁琐的依赖管理流程全部自动化掉。一行命令安装库,一行命令删除库,不同平台不同架构都能用,而且和CMake、Visual Studio的集成做得相当到位。这门课就是要把vcpkg从头到尾讲清楚,让你以后再也不用为C++的依赖问题发愁。
一、认识vcpkg:从零开始
课程的第一部分会先帮你搞清楚vcpkg到底是什么、能干什么、为什么值得用。老师不会一上来就甩命令,而是先帮你建立对vcpkg的整体认知,明白它在C++开发生态里的位置和价值。装东西之前,得先知道工具是什么,这个顺序很重要。
二、安装与配置:搭建你的工作环境
接下来是安装环节,这也是很多新手容易卡住的地方。课程会分别讲解在Windows和Linux上安装vcpkg的具体步骤,每一步都讲得很细,连需要提前准备什么环境都给你列得明明白白。Windows上有专门的安装文档可以对照着做,Linux也有对应的指南。
装完之后,老师还会带你了解vcpkg的目录结构,包括buildtrees、downloads、installed、packages这几个关键目录各自的作用。比如buildtrees里放的是编译时产生的临时文件,如果某个包编译失败了,去这里翻日志是排查问题的第一步。downloads存的是下载好的源码压缩包,缓存下来以后装别的包就不用重新去网上拉了。installed目录最重要,安装好的头文件、库文件都整齐地躺在这里等着你用。
更新vcpkg的命令也会讲到,因为这个工具迭代速度挺快,定期更新才能用上新功能和新版本的库。另外,CMake的安装也会一并讲清楚,因为后面大量操作都要依赖它。
三、玩转包管理:搜索、安装、删除
工具装好了,接下来就是最常用的日常操作环节。
课程会教你怎么搜索包,怎么安装单个包,怎么一次安装多个包。很多人不知道,其实一行命令就能同时装好几个库及其所有依赖,这在初始化一个新项目的时候特别省事,命令一下去,vcpkg就把整条依赖链帮你搞定。
装完之后怎么确认装了什么?list命令。哪些包用不到了想清理?remove命令。已经装的包有新版了想升级?upgrade命令。这些操作课程都会一个一个演示,看完就能直接上手操作。
四、三元组:跨平台编译的秘密武器
这是vcpkg里一个很有意思的概念,叫Triplet,也就是三元组。简单说,它就是告诉vcpkg"我这个包要编译成什么架构、什么运行时、什么链接方式"的配置。比如x64-windows、x64-linux、arm64-windows,这些都是预置好的三元组。
课程会先解释三元组的工作原理,然后教你怎么创建自定义三元组。比如你的项目要用到某个特殊的编译选项,或者需要把某个库改成静态链接,这时候就得自己动手写一个三元组文件了。怎么在自定义三元组里添加编译器标志,这些细节课程都会一步步演示清楚。
五、两种模式:经典模式与清单模式
vcpkg有两种工作模式,把它们的区别搞清楚是后续用好它的基础。
经典模式比较直接,你装什么它就全局生效,整台开发机上的所有项目都能用。这种模式胜在简单直接,适合个人开发或者小团队协作,上手几乎没有门槛。
清单模式则更适合正规的项目开发。你可以在项目根目录下放一个vcpkg.json文件,里面写清楚这个项目依赖哪些包、什么版本、用什么功能。换了一台新机器,或者新同事加入项目,只要有这个清单文件在,就能完整复现出一样的开发环境。这对团队协作和持续集成特别有用,课程后面会用大量篇幅来讲解清单模式的方方面面。
六、vcpkg与CMake实战
光说不练假把式,课程会用一个小项目带你完整走一遍流程。从创建项目目录结构开始,写源码文件,写清单文件,再写CMakeLists.txt,然后配置项目、编译、运行。每一步都有清晰的演示,看完你就能知道在实际项目里这些东西怎么组合起来用,做到心里有数。
七、清单模式进阶:版本控制与最佳实践
如果你打算在正式项目里用清单模式,这部分内容一定不能错过。
课程会深入讲解怎么添加多个依赖、怎么用特性(features)来控制包的可选功能。比如fmt库有header-only模式和编译模式,怎么通过清单文件来指定你想要哪种。
版本控制是清单模式的精髓之一。怎么设置基线(baseline)来锁定一组版本,怎么设置最低版本约束,怎么在基线里做更细粒度的版本控制,这些都有专门的小节来讲解。老师还会专门总结一些常见的错误和最佳实践,比如版本冲突该怎么处理、基线选错了有什么补救办法,这些都是实际项目中经常踩的坑,提前知道能少走很多弯路。
八、Visual Studio集成
如果你日常用Visual Studio做开发,课程最后会演示怎么在经典模式下把vcpkg集成到VS里。创建项目、配置设置、编译运行,整个流程从头到尾走一遍,以后在VS里就能直接引用vcpkg装好的库,再也不用手动去配置什么包含目录和库目录了。
整门课38个视频,总时长大约一小时五十分钟。内容不长,但信息密度挺高,每一个知识点都讲到了实际操作的层面,没有什么废话。
学完这门课之后,你会对vcpkg形成一个完整的认知,从安装配置到日常使用,从简单的单包管理到复杂的多包版本控制,都能应对自如。刚入门C++不久的新人可以借它省去大量配置环境的麻烦,做了几年开发的老程序员也能用它把团队的依赖管理流程规范化。学完之后,你对vcpkg的理解会远超只会敲几个命令的水平,而是能真正把它嵌入到自己的开发工作流里去,让它成为你日常开发的好帮手。