嵌入式arm linux Java运行环境搭建和注意事项

嵌入式arm linux Java运行环境搭建和注意事项

我的开发硬件环境

tiny4412,友善之臂的开发板

搭建步骤

1. 下载 ORacle 公司的ejdk-8u211-linux-arm-sflt.tar.gz(软件浮点版本,这个很重要,根据自己的板子硬件选。不知到就只有一个个试试) (下载地址:link

2. 按照documentation 的 quick installation 安装即可

参考 link:2 Quick Start for Platform Developers

3. 从tar包中提取软件:

 $ cd /usr
 $ gunzip *.gz
 $ tar -xvf *.tar
 List of unpacked files ...

4. 验证安装(之前有一步配置ejdk的环境变量,其实可以不用进行) 转到ejdk的bin目录下,执行 ```

bin/jrecreate.sh --help
$ cd $EJDK_HOME
$ bin/jrecreate.sh --help
Usage: jrecreate --help

5. 创建在嵌入式linux可用的 jre (Create Your JRE with jrecreate)

使用bin目录下的jrecreate.sh 脚本创建,详细参数可见上述链接
参数的主要区别是 安装什么功能的java 环境,可以考虑自己的硬件资源,选择合适的参数。我发现完整版的jre大概35M左右,板子还是能用的,所以使用的是完整安装:
$ bin/jrecreate.sh --dest   (+你安装的路径/jre)   //这条命令会在你设置的目录下创建 jre 目录。也就是我们要的目录
// 显示如下:(具体参数的值根据你选则的版本和脚本执行参数不一样而不同)
Building JRE using options Options {
    ejdk-home: /home/xxxx/ejdk/ejdk<version>
    dest: /tmp/testjre
    target: linux_i586     
    vm: minimal    
    runtime: compact1 profile
    debug: false
    keep-debug-info: false
    no-compression: false
    dry-run: false
    verbose: false
    extension: []
}

6. 将生成的jre 拷贝到你的嵌入式板子上,比如/usr/ 目录下。然后设置环境变量。在/etc/profile中添加:

export  JAVA_HOME=/usr/jre/
export PATH=$PATH:${JAVA_HOME}/bin

7. 验证是否安装成功:

$ java -version   //若有提示信息输出则成功。

注意事项

验证安装 出现 Java :not found

1.考虑环境变量是否配置正确(配置完profile 接的source一下,更新环境变量)

2. 考虑 共享库是否都有 在pc的linux上用 readelf -d java 查看jre/bin目录下的java文件,可以看到java运行需要的共享库,可以看见 java这个程序 需要:

 java这个程序 需要的动态库自己取自己的arm linux 的根文件系统中的lib文件夹中找打需要的库拷贝到开发板jre/lib/arm下就可以了

3.确保第一步执行正确的话,考虑ejdk 版本(我之前为了在这个板子上搭环境,试了很多个版本,版本的区别主要是 硬件浮点和软件浮点,以及gcc的参数。最后发现我的板子适合软件浮点的版本 全名:ejdk-8u211-linux-arm-sflt.tar.gz 下载地址

各个版本,这里只有3个其他版本有更多

4. 这里的选型只是参考,要根据你板子来选。不知道的话就只有像我一样一个个试,4412虽然有硬件浮点功能,可不知道怎么就是用不了硬件浮点的版本。希望有大神可以给我解答下。

java应用程序开发ing

要注意pc上的jdk版本要和开发板的jre版本相同,不能跨版本

  • 8
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
嵌入式Linux交叉环境搭建是指在一台主流操作系统(如Windows、macOS或Linux)上创建和配置一个工具链,以便在嵌入式目标系统(如ARM、RISC-V等)上编译和运行Linux内核和应用程序。以下是搭建嵌入式Linux交叉环境的基本步骤: 1. **选择目标架构**:首先确定你要为哪种嵌入式处理器构建交叉编译环境,比如ARM、RISC-V或MIPS等。 2. **获取工具链**: - 对于ARM,常见的工具链有Keil uVision、GNU Arm Embedded Toolchain、or embedded Linux Development Kit (Yocto Project)等。 - RISC-V有RISC-V Toolchain,包括GCC、Clang等。 3. **安装开发工具**:安装交叉编译器(如`arm-linux-gnueabihf-gcc`),汇编器,链接器,以及调试器等必要的工具。 4. **配置环境变量**: - 在主机机器上设置环境变量,使系统能够识别和使用交叉工具链,例如`PATH`和`LD_LIBRARY_PATH`。 5. **下载并配置目标板支持**: - 如果是基于Yocto的环境,需要下载特定的Yocto镜像或者BB(BitBake)文件,针对你的硬件进行配置。 6. **编译内核**: 使用交叉编译工具链,从源码开始编译Linux内核,指定目标架构和配置选项。 7. **烧录到目标板**: 编译好的内核和文件系统通常会被烧录到TF卡、SPI闪存或者其他存储介质,然后通过JTAG或USB连接将它们加载到目标板上。 8. **测试与调试**: 运行交叉编译的示例程序或者内核,确保在目标硬件上运行正常。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值