在将github库包含在项目中之前编译github库有哪些优点/缺点?

时间:2017-09-22 07:08:24

标签: c++

在将库链接到项目之前编译库有什么好处?

我的理解是,非编译版本(如果可用)将导致较小的总体大小。为什么这不是包含库的首选方式?

1 个答案:

答案 0 :(得分:2)

在链接之前,“编译库”是什么意思?您可以将其编译为静态库并链接它,在这种情况下(假设使用LTO)结果与将其作为项目的一部分进行编译相同。您可以将其编译为共享库并链接它。当您的项目只有一个构建工件时,第一种情况将导致更小的总体大小,因此您只会在构建工件中只存在必要的库代码部分。当您的项目有多个构建工件时,第二种情况会导致整体尺寸变小,这样您就可以避免在每个构建工件中避免库代码重复。