【问题标题】:Cross-compiling nfs-utils package for Android为 Android 交叉编译 nfs-utils 包
【发布时间】:2014-05-23 03:48:31
【问题描述】:

我想为我的 Android 设备添加 NFS 支持(客户端和服务器)。我已经构建并插入了所需的内核模块(sunrpc.kolockd.konfs.koexportfs.konfsd.ko

我的 Android 手机现在可以通过使用 Busybox 挂载来充当 NFS 客户端。但是作为 NFS 服务器工作,似乎缺少一些实用程序(例如exportfs)和服务守护程序(portmapnfsdmountd 等)。

我想我需要安装 nfs-utils 软件包 (http://nfs.sourceforge.net/)。

我想我应该在我的电脑上交叉编译它,然后将它安装到我手机的 Linux 内核上。我不熟悉整个交叉编译的事情。我现在正在尝试在 Ubuntu 上编译它,这是我正在使用的命令:

$ ./configure 
  --target=arm-linux-gnueabi 
  --host=arm-linux-gnueabi 
  --build=x86_64-linux 
  CC=/usr/bin/arm-linux-gnueabi-gcc 
  CPPFLAGS="-I/usr/arm-linux-gnueabi/include/" 
  CFLAGS="-nostdlib" 
  LDFLAGS="-Wl,-rpath-link=/usr/arm-linux-gnueabi/lib/ -L/usr/arm-linux-gnueabi/lib/"
  LIBS="-lc"

这给了我错误消息:

检查 libwrap...configure: error: *** libwrap missing

config.log 错误:

  1. 配置:3978:/usr/bin/arm-linux-gnueabi-gcc -V >&5

    arm-linux-gnueabi-gcc:致命错误:没有输入文件

  2. 配置:3978:/usr/bin/arm-linux-gnueabi-gcc -qversion >&5

    arm-linux-gnueabi-gcc:致命错误:没有输入文件

  3. conftest.c:12:28:致命错误:ac_nonexistent.h:没有这样的文件或目录

  4. conftest.c:55:28:致命错误:sys/capability.h:没有这样的文件或目录

我安装了gcc-arm-linux-gnueabi 包,但我想在构建/链接依赖库时存在一些问题,我不太了解。它们也应该交叉编译吗?我怎样才能做到这一点?我是否需要将这些库插入到我的手机中才能使 NFS 正常运行?

我对此完全陌生,因此非常感谢任何帮助。

【问题讨论】:

    标签: android linux ubuntu cross-compiling nfs


    【解决方案1】:

    你有一个 tcp-wrappers 的依赖,这意味着你必须首先构建和安装 tcp 包装器。

    或者,您可以将此选项传递给 ./configure:

    --without-tcp-wrappers \

    此外,您还可以获得完整的选项列表:

    ./configure --help

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-10
      • 2016-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多