在OSX上编译FileZilla

时间:2017-01-27 16:45:31

标签: macos filezilla gnutls

我一直在尝试在Mac上为一个研究项目编译FileZilla版本3.11和3.24但是当我运行../configure时出现以下错误:

configure: error: libgnutls 3.1.12 greater was not found. You can get it from http://gnutls.org/

然而,我已经使用自制软件安装了gnutls;我跑的时候

brew list gnutls

我可以看到安装在/usr/local/Cellar/gnutls/3.5.8 /

的库

任何解决问题的想法都值得赞赏。感谢

1 个答案:

答案 0 :(得分:1)

更新了答案

homebrew 安装的 GNUtls 附带pkgconfig文件。因此,如果您还没有使用 pkgconfig ,则需要安装

brew install pkgconfig

然后,一旦你有了,你可以找到编译器包含文件设置:

pkg-config --cflags gnutls

示例输出

-I/usr/local/Cellar/gnutls/3.5.8/include -I/usr/local/Cellar/nettle/3.3/include -I/usr/local/Cellar/libtasn1/4.10/include -I/usr/local/Cellar/p11-kit/0.23.3/include/p11-kit-1

链接器库设置为:

pkg-config --libs gnutls

示例输出

-L/usr/local/Cellar/gnutls/3.5.8/lib -lgnutls

所以,我们(只是)需要将这些信息传达给 FileZilla 。所以,首先我们运行:

./configure --help | grep -i utls

示例输出

  --enable-gnutlssystemciphers
                          Enables the use of gnutls system ciphers.
  LIBGNUTLS_CFLAGS
              C compiler flags for LIBGNUTLS, overriding pkg-config
  LIBGNUTLS_LIBS
              linker flags for LIBGNUTLS, overriding pkg-config

所以看起来我们需要做类似的事情:

export LIBGNUTLS_CFLAGS=$(pkg-config --cflags gnutls)
export LIBGNUTLS_LIBS=$(pkg-config --libs gnutls)
./configure

原始答案

我还没有尝试使用 FileZilla ,但我将其与其他软件包一起使用,并且没有什么可失去的...

如果自制已在/usr/local/Cellar/gnutls/3.5.8/中安装了您的GNUtl,您可以尝试在configure中告诉 FileZilla 这样的位置:

./configure CPPFLAGS="-I/usr/local/Cellar/gnutls/3.5.8/include" LDFLAGS="-L/usr/local/Cellar/gnutls/3.5.8/lib" ... other flags