如何管理和迁移C ++库?

时间:2018-05-23 13:24:49

标签: c++

我正在学习C ++,在C ++中有类似python-pip的东西吗?我在第一个项目中使用json / YAML个包,我想知道哪个是在项目中管理依赖项的正确方法,在我完成开发之后,这是迁移依赖项的正确方法到生产环境?

2 个答案:

答案 0 :(得分:4)

C ++没有标准的包管理器或构建系统:这是该语言的主要难点之一。您有几个选择:

  • 在需要时手动安装依赖项。

  • 使用您的操作系统包管理器。

  • 采用第三方软件包管理器,例如conan.io

上述解决方案都不是完美的,与Python或Rust等语言相比,依赖管理可能总是需要您付出更多努力。

答案 1 :(得分:0)

据我所知,C ++中没有类似于pip的中央图书馆管理系统。如果您的操作系统支持,您需要手动或通过某个软件包管理器下载和安装所需的软件包。

至于在C ++项目中管理多个库,可以使用CMAKE或类似的东西。如果您动态链接库(即,尽管是.dll或.so文件),那么您需要提供这些动态库二进制文件以及您的应用程序。要找出可能需要哪些dll文件,您可以使用Dependency WalkerELF Library Viewer

就个人而言,我使用的是开发环境 - 特别是Qt(使用QtCreator),其中包含许多这些组件,如qmake等 - 这简化了开发和分发过程。