将图书馆包含的图书馆放在哪里?

Where to put a library's included libraries?

我目前正在开发一个用于其他项目的 C++ 库,并使用了一些其他库(如 Nlohmann JSON、PrettyPrint、GTest 等)。我想弄清楚的是将所有这些库放在哪里,并确保必要的库包含在使用该库的项目中。目前,我的项目结构如下:

Library/
  config/ <- Premake and build files
  include/ <- Actual header files
  lib/ <- Current home of all library files
  src/ <- Source files of library
  libLibrary.a <- Compiled library

任何人对重构它有什么建议,以便使用这个库的项目需要最少的步骤来包含和使用它?

如果它是 .a 那么它是静态编译并内置到您的最终库文件中的,因此没有必要包含它。

如果它是共享的 (.so) 和系统提供的,那么您也不必担心。

只有共享库 不是 您需要关心的系统,如果是这种情况,您需要提供有关如何安装和使用您的系统的具体说明具有共享依赖项的库。