【问题标题】:Homebrew installed to home directory - how to link to libs in autoconf?Homebrew 安装到主目录 - 如何链接到 autoconf 中的库?
【发布时间】:2014-04-12 23:52:13
【问题描述】:

不确定这是属于这里还是属于超级用户,但这里是:

我在我的 $HOME/opt/homebrew 目录中安装了 Homebrew(我非常重视用户帐户的隔离 - 是的,我就是其中之一)。在任何情况下,Homebrew 都不会安装到 /usr/local/。它工作正常,因为我在 .bashrc 中将 Homebrew 添加到了我的个人路径的头部。

我现在正在使用 autoconf。我是C新手。我有一个用于检查 Apache Portable Runtime 的 configure.ac。它执行 --install 来生成一个 ./configure 就好了。当我运行 ./configure 时,它​​没有找到它 - 可能是因为它没有查看 Homebrew 安装它的位置。

我假设我必须为设置 includeir 和 libdir 的 ./configure 脚本提供参数。但它不起作用。链接到这些 Homebrew 库的正确方法是什么?

【问题讨论】:

    标签: homebrew autoconf


    【解决方案1】:

    为了后代:

    configure.ac 中,我使用PKG_CHECK_MODULES 宏。当然,这假设您已经安装了 pkg-check,我通过 Homebrew 进行安装。

    PKG_CHECK_MODULES(GLIB2, glib-2.0, [], [AC_MSG_FAILURE([glib-2.0 is not installed])])
    

    上面的宏设置了一组变量用于autoconf和automake文件,前缀为GLIB2

    我在Makefile.am 中使用这个:

    bin_PROGRAMS = <myprogram>
    <myprogram>_SOURCES = \
            main.c
    <myprogram>_CFLAGS = ${GLIB2_CFLAGS}
    <myprogram>_LDADD = ${LIBS} ${GLIB2_LIBS}
    

    如果你使用pkg-config,这真的很简单。您甚至可以打包自己的库并以这种方式安装它们以供使用,将它们与 Homebrew 链接到位。

    【讨论】:

      猜你喜欢
      • 2019-04-22
      • 2015-12-01
      • 1970-01-01
      • 2020-09-26
      • 1970-01-01
      • 2010-11-13
      • 1970-01-01
      • 1970-01-01
      • 2017-04-02
      相关资源
      最近更新 更多