我对C编程非常陌生,我正在尝试了解安装我计划在我的项目中使用的第三部分库的“惯用方法”是什么。
在我来自的JVM世界中,我们有一个公共存储库,一个构建系统为我们做所有的依赖项下载。这是在C中开发本机应用程序的方法吗
在我的特殊情况下,它是libcurl,我想确保它安装正确。作为构建系统,我使用Make (而不是CMake)。
为它添加一个特定的目标(例如,设置所有必要的依赖项的bootstrap )是否正确?
严格地说,我不确定这样的“依赖-安装”是否是Makefile的责任。
发布于 2018-11-07 20:50:07
当您使用自动工具在Linux上构建时,它将检查系统上是否存在给定库。如果它丢失,那么配置将停止并通知用户。然后,用户有机会将软件库与系统的存储库一起安装。
与cmake相同,您可以定义依赖项,并且当尝试使用缺少的库进行构建时,cmake将通知您。
这与Java世界中的Maven略有不同,后者会自动下载依赖项。make或cmake并非如此。
发布于 2018-11-07 20:46:29
如果你是在Linux下,这可能会有帮助。有一种规范的方法。这是“自动工具”。它为您提供了编写一些脚本来检查库是否存在并使用它的可能性。我对这个过程不是很熟悉,但它是可配置的,你可以找到几十个关于“自动工具”的例子和教程。所以,如果这是你的案例,我建议你检查一下。
根据我的经验,我总是使用CMake。
https://stackoverflow.com/questions/53189582
复制相似问题