答案 0 :(得分:1)
不要忘记依赖关系。
像GSL这样的库作为独立实体分发是有原因的:
用户可以独立于使用它的软件升级库,从而使您无需在GSL版本更改时不断更新项目。
许可问题。
依赖关系。如果GSL具有依赖关系,并且您希望将GSL构建为项目的一部分,那么您还需要包含所有依赖项的所有源代码...及其依赖项...及其依赖项......等等等等。如果您要求已经安装了某些子依赖项,那么您也可以要求已经安装了GSL。
其他原因我无法想到因为我还有其他事情要做。
答案 1 :(得分:0)
只需将库的源代码复制到项目的层次结构中,然后开始创建或修改Makefile(或任何GSL使用的)以使其构建。
例如,您可以将它放在目录external/libgsl
中,然后为执行构建的项目设置Makefile目标。然后,您将项目的代码依赖于库,以便始终首先构建库。
当然,您还需要考虑在分发项目时可能出现的任何许可问题。