交叉编译gnutls时出错

时间:2011-10-09 09:46:29

标签: linux compilation cross-compiling mips64

我正在尝试交叉编译gnutls。 Gnutls取决于libnettle。我能够交叉编译libnettle,但是,当尝试交叉编译gnutls时,我在配置期间遇到错误:

configure: error:  Libnettle 2.2 was not found. 

我交叉编译的libnettle版本是2.2。

配置命令是:

./configure --host=mips --prefix=/home/tom/lib/gnutls-3.0.3 CC=/crosstools/mips-gcc CXX=/crosstools/mips-g++ --enable-shared --with-libnettle-prefix=/home/tom/lib/nettle-2.2

我也尝试过: 配置LDFLAGS="-L/home/tom/lib/nettle-2.2"没有运气。

libs安装在/home/tom/lib/nettle-2.2/lib中。我也试过这个目录。由于某种原因,没有检测到libnettle。谁知道为什么?

1 个答案:

答案 0 :(得分:0)

基于a similar question以及我自己的个人经验,gnutls需要同时看到libnettle和libhogweed才能通过此检查。荨麻构建将构建两者,但前提是您在系统上也有GMP个库。

以下是执行此操作的一些步骤:

  1. 检查你的/home/tom/lib/nettle-2.2/lib目录并确保你有libnettle.so和libhogweed.so。
  2. 如果您没有libhogweed.so,则必须使用GMP重建荨麻。您的发行版可能有一个gmp-devel包,将安装必要的GMP库(我的,所以我没有尝试从源代码构建GMP)
  3. 然后你应该能够建立gnutls,或者至少可以通过libnettle检查。