vcpkg depend-info
摘要
vcpkg depend-info [options] <package>...
说明
显示一组端口包的依赖项。
depend-info
以多种格式显示一组包的所有可传递依赖项,包括纯文本、树、DGML、DOT 或 Mermaid。
该包集被认为是一个单一的组合请求,类似于 vcpkg install <package>...
,但与安装的包无关。
与多个三元组(默认、主机、每个包)一起使用时,会标记为默认值以外的其他三元组安装的包。
主机三元组的包标有后缀 :host
。
示例
列出
$ vcpkg depend-info ableton
vcpkg-cmake:
vcpkg-cmake-config:
asio: vcpkg-cmake, vcpkg-cmake-config
ableton-link: asio, vcpkg-cmake, vcpkg-cmake-config
ableton: ableton-link
树
$ vcpkg depend-info ableton --format=tree
ableton
+-- ableton-link
+-- asio
| +-- vcpkg-cmake
| +-- vcpkg-cmake-config
+-- vcpkg-cmake
+-- vcpkg-cmake-config
圆点
$ vcpkg depend-info ableton --format=dot
digraph G{ rankdir=LR; node [fontname=Sans]; edge [minlen=3]; overlap=false;
"vcpkg-cmake";
"vcpkg-cmake-config";
"asio";
"asio" -> "vcpkg-cmake";
"asio" -> "vcpkg-cmake-config";
"ableton-link";
"ableton-link" -> "asio";
"ableton-link" -> "vcpkg-cmake";
"ableton-link" -> "vcpkg-cmake-config";
"ableton";
"ableton" -> "ableton-link";
"2 singletons...";
}
DGML
$ vcpkg depend-info ableton --format=dgml
<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="http://schemas.microsoft.com/vs/2009/dgml">
<Nodes>
<Node Id="ableton"/>
<Node Id="ableton-link"/>
<Node Id="asio"/>
<Node Id="vcpkg-cmake"/>
<Node Id="vcpkg-cmake-config"/>
</Nodes>
<Links>
<Link Source="ableton" Target="ableton-link"/>
<Link Source="ableton-link" Target="asio"/>
<Link Source="ableton-link" Target="vcpkg-cmake"/>
<Link Source="ableton-link" Target="vcpkg-cmake-config"/>
<Link Source="asio" Target="vcpkg-cmake"/>
<Link Source="asio" Target="vcpkg-cmake-config"/>
</Links>
</DirectedGraph>
Mermaid
$ vcpkg depend-info ableton --format=mermaid
flowchart TD;
ableton --> ableton-link;
ableton-link --> asio;
ableton-link --> vcpkg-cmake;
ableton-link --> vcpkg-cmake-config;
asio --> vcpkg-cmake;
asio --> vcpkg-cmake-config;
呈现的关系图
flowchart TD;
ableton-->ableton_link;
ableton_link-->asio;
ableton_link-->vcpkg_cmake;
ableton_link-->vcpkg_cmake_config;
asio-->vcpkg_cmake;
asio-->vcpkg_cmake_config;
多个三元组和包
$ ./vcpkg depend-info proj tiff[core] --triplet x64-windows-static-md
vcpkg-cmake:host:
vcpkg-cmake-config:host:
zlib: vcpkg-cmake:host
liblzma: vcpkg-cmake:host, vcpkg-cmake-config:host
curl[sspi, ssl, schannel, non-http]: vcpkg-cmake:host, vcpkg-cmake-config:host, zlib
nlohmann-json: vcpkg-cmake:host, vcpkg-cmake-config:host
sqlite3[json1, tool]:host: vcpkg-cmake:host, vcpkg-cmake-config:host
sqlite3[json1]: vcpkg-cmake:host, vcpkg-cmake-config:host
tiff[zip, lzma]: liblzma, vcpkg-cmake:host, vcpkg-cmake-config:host, zlib
proj[tiff, net]: curl, nlohmann-json, sqlite3:host, sqlite3, tiff, vcpkg-cmake:host, vcpkg-cmake-config:host
选项
所有 vcpkg 命令都支持一组通用选项。
--format=<format>
list
默认格式,打印文本列表。
tree
打印类似于控制台命令 tree
的“树”。
dot
生成 DOT 图形说明格式的依赖关系树。
dgml
生成 DGML(定向图形标记语言)XML 格式的依赖关系树。
mermaid
生成 Mermaid 关系图语法格式的依赖关系树。
--show-depth
在输出中显示递归深度。
仅接受列表和树格式。
--max-recurse=<depth>
设置要显示的最大深度。
值为 -1 表示无限制。
--sort=<type>
设置依赖项列表的排序顺序。
仅接受列表格式。
排序选项:
lexicographical
- 按名称排序topological
-(默认)按深度递增排序reverse
- 按深度递减排序