我对使用Autoconf还是比较陌生,到目前为止,我只使用了PKG_CHECK_MODULES
,这对我来说很有用。我遇到了一个软件包,特别是Debian的libmhash-dev v0.9.9.9-1
,其中不包括供.pc
使用的pkg-config
文件。
如何告诉Autoconf检查mhash
并将正确的标志传递到g++?
最佳答案
不知道这是否是适合这种方法的人(很确定不是!),但是我的学习曲线很长一段时间一直看起来像:foo是一个好主意,但是许多老顽皮的人都说它不好,但是我我将使用它,因为它很棒。 (等待几个月)哦,不,那些说foo不好的人是对的,但是现在我已经完成了几个月的工作,我面前还有很多额外的工作要解决。笨蛋
简而言之,PKG_CHECK_MODULES是一个坏主意,但是直到使用了几个月(或几年)并且有很多依赖于它的代码,您才可能意识到。将来可以避免麻烦,今天就从您的configure.ac文件中清除PKG_CHECK_MODULES。
使用AC_CHECK_LIB和AC_SEARCH_LIBS和AC_CHECK_FUNC,但不要使用PKG_CHECK_MODULES。
pkg-config肯定有位置,精明的管理员可以在CONFIG_SITE或脚本中使用它来帮助设置配置运行,但是不应使用PKG_CHECK_MODULES。
关于configuration - 没有.pc文件时,让Autoconf手动检查库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5001966/