【问题标题】:how to deploy java embedded suit on openwrt system如何在openwrt系统上部署java嵌入式套件
【发布时间】:2014-04-23 17:41:22
【问题描述】:
  1. 从这里下载 jre:http://www.oracle.com/technetwork/java/embedded/downloads/java-embedded-suite/index.html
  2. 上传jre目录到OpenWrt
  3. 测试一下:

./deploydir/jre/bin/java -version

但是失败,错误信息:

/bin/ash: ./java: 未找到

我很困惑。怎么了?

添加信息:

我使用文件命令,并且有输出: ./java:ELF 32 位 LSB 可执行文件,Intel 80386,版本 1 (SYSV),......

【问题讨论】:

    标签: java openwrt


    【解决方案1】:

    你不能这样做,我现在能想到的两个原因:

    1. 很可能二进制文件java 不是为相同的CPU 类型编译的;在您的情况下,命令文件显示 java 二进制文件包含 Intel 80386 的代码;我认为您的设备中没有这种 CPU。

    2. 即使您的设备有 Intel 80386,java 二进制文件也会使用动态库(您是否已经安装了它们?),应该再次针对您正在使用的处理器类型编译动态库

    您需要获取 java 的源代码(可能在 OpenJDK 网站上)并针对您正在使用的平台编译它,对于它使用的库也是如此。

    【讨论】:

    • 首先,谢谢。关于您的建议,因为我在我的 PC 上运行的 VitualBox 上使用 OpenWrt 系统,而且我非常确定该系统是 X86 操作系统。下一个,因为我使用 jrecreate 来自定义我的 JRE,所以我认为我拥有完整的运行java的动态库。很抱歉我仍然没有解决问题。
    • 前段时间我在使用嵌入式系统,当我执行一个动态链接的 ELF 文件时,我忘记为其安装依赖项,我总是得到“找不到 xxx”而不是“缺少依赖项” “这很烦人,但我想这是因为文件的大小应该尽可能小,以至于没有空间来存储更详细的字符串消息。无论如何,在您的主机环境中尝试使用 ldd (man ldd) 它会告诉您给定 ELF 对象(库或可执行文件)的依赖关系
    猜你喜欢
    • 2012-11-26
    • 1970-01-01
    • 2017-10-10
    • 1970-01-01
    • 2011-05-12
    • 2010-09-15
    • 1970-01-01
    • 2015-03-11
    • 2021-04-29
    相关资源
    最近更新 更多