6

使用 vcpkg 安装软件包后,会显示帮助文本,例如...

The package fmt:x64-windows provides CMake targets:

    find_package(fmt CONFIG REQUIRED)
    target_link_libraries(main PRIVATE fmt::fmt fmt::fmt-header-only)

...对于将它们与 CMake 一起使用所需的各种说明。如果您想在将来回忆它并且没有写下来,您从哪里获得这些信息?一些库有比上述更多的指令。

4

2 回答 2

6

您可以在名为“用法”的文件中找到帮助文本。

您可以在ports目录中找到它们,或者如果您只对您的包感兴趣,那么它们位于installed. 您可以使用以下命令搜索它们:

# VCPKG_ROOT denotes where is vcpkg installed
$ find $VCPKG_ROOT . -name usage
installed/x64-linux/share/openssl/usage
installed/x64-linux/share/gtest/usage

但是,包括 在内的某些软件包fmt并未在特定文件中提供此信息,它们仅提供目标。它们存储在$VCPKG_ROOT/installed/<YOUR_ARCHITECTURE>/share/fmt/fmt-targets.cmake.

vcpkg然后在安装后打印目标列表。我不知道是否存在更好的解决方案,然后查找<package>-targets.cmake文件并检查内容。

$ find $VCPKG_ROOT/installed -name *-targets.cmake 
installed/x64-linux/share/cxxopts/cxxopts-targets.cmake
installed/x64-linux/share/fmt/fmt-targets.cmake

所以如果你结合这两种技术,你应该能够找到vcpkg安装后打印的所有信息。

于 2019-11-22T14:08:52.937 回答
1

只需再次运行命令vcpkg install 即可

 .\vcpkg.exe install fmt
Computing installation plan...
The following packages are already installed:
    fmt[core]:x64-windows -> 8.0.1
Package fmt:x64-windows is already installed
Restored 0 packages from **\AppData\Local\vcpkg\archives in 155.9 us. Use --debug to see more details.

Total elapsed time: 58.04 ms

The package fmt provides CMake targets:

    find_package(fmt CONFIG REQUIRED)
    target_link_libraries(main PRIVATE fmt::fmt)

    # Or use the header-only version
    find_package(fmt CONFIG REQUIRED)
    target_link_libraries(main PRIVATE fmt::fmt-header-only)

于 2022-01-05T14:44:59.107 回答