我一直在尝试在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 /
的库任何解决问题的想法都值得赞赏。感谢
答案 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