极路由 java_极路由4pro安装java(Jamvm 2.0.0 + gnu classpath 0.9.8)
首先试了gnu classpath 0.9.9,编译不过后来改成0.9.8
编译环境
OS: 64位 Ubuntu 16.04 LTS(vmware虚拟机) SDK: 用之前讲过的官方SDKmtmips
除了官方文档要装的上面这些东西,还要手动装一个g++-multilib,否则编译classpath会出错,另外要装tar,方便压缩解压文件
sudo apt-get install g++-multilib tar
进入交叉编译环境
进入SDK解压目录OpenWrt-SDK-mtmips-for-redhat-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2 运行
./scripts/cross-compile.sh ./
可以看到终端显示黄色文字cross-compile@mipsel:,说明进入了交叉编译环境 之后都在这个交叉编译环境中操作
之后找一个空目录做编译
mkdir ~/show
cd ~/show
交叉编译classpath
wget ftp://ftp.gnu.org/gnu/classpath/classpath-0.98.tar.gz
tar -zxvf classpath-0.98.tar.gz
cd classpath-0.98/
sudo mkdir -p /usr/classpath
./configure --prefix=/usr/classpath --disable-examples --without-x --disable-qt-peer --disable-gtk-peer --disable-gconf-peer --disable-plugin --disable-alsa --disable-dssi --disable-Werror --disable-tools --host=mipsel-openwrt-linux
make
sudo make install
操作完成后,classpath就会安装到/usr/classpath目录,接着校验安装后的classpath是否是mipsel(32位小端的mips架构的cpu)平台的文件:
file /usr/classpath/lib/classpath/libjavaio.so.0.0.0
如果显示ELF 32-bit LSB shared object, MIPS, MIPS32 rel2 version 1 (SYSV),说明编译正确了
把整个/usr/classpath目录打包传给极路由,注意把/soft替换成外接硬盘的目录防止路由器空间不足
zip -r classpath.zip /usr/classpath
scp -P 1022 classpath.zip root@192.168.199.1:/soft
交叉编译jamvm
cd ~/show
wget https://jaist.dl.sourceforge.net/project/jamvm/jamvm/JamVM%202.0.0/jamvm-2.0.0.tar.gz
tar -zxvf jamvm-2.0.0.tar.gz
cd jamvm-2.0.0/
sudo mkdir -p /usr/jamvm
./configure --prefix=/usr/jamvm --host=mipsel-openwrt-linux
make
sudo make install
同样检查安装后的文件是否是mipsel平台的:
file /usr/jamvm/bin/jamvm
打包上传
zip -r jamvm.zip /usr/jamvm
scp -P 1022 jamvm.zip root@192.168.199.1:/soft
给路由器安装classpath和jamvm
先检查jamvm能否打印版本号:
cd /soft
mkdir classpath && cd classpath && unzip ../classpath.zip && cd ..
mkdir jamvm && cd jamvm && unzip ../jamvm.zip && cd ..
jamvm/usr/jamvm/bin/jamvm -version
注意看上面红框框出来的三个路径必须要存在,否则无法运行字节码,所以我们可以加上软连接指过去:
ln -s classpath/usr/classpath /usr/local/classpath
ln -s jamvm/usr/jamvm /usr/jamvm
最后加上/etc/profile的环境变量,这个搞过java的都懂就不说了
在x86平台编译好java1.5的字节码,然后上传到路由器中用jam跑:
打完收工
注意jamvm+classpath只能支持到java1.5,如果想支持到1.8的话,需要jamvm结合openjdk8才行,但现在openjdk8还不支持mipsel
分享一下编译好的classpath和jamvm:
链接:https://pan.baidu.com/s/1sll0W6x 密码:6mui
这个版本只支持tomcat 5.0、spring 2.5.6、maven 3.1.1 及之前的版本。tomcat需要把bin/setclasspath.sh中检查java路径是否合法的代码去除掉,jsp也别想了,没有javac编译器
极路由 java_极路由4pro安装java(Jamvm 2.0.0 + gnu classpath 0.9.8)相关推荐
- macos自带java_在 MacOS 上安装 Java - Java 入门教程
本小节我们将介绍如何在 MacOS 平台安装 Java . 如果你想在其他平台安装 Java,请查看对应平台的安装教程: 1. 下载安装包 我们首先打开 Oracle 官网的 JDK 下载地址,找到 ...
- 安装java时,配置环境变量classpath的作用
想必大家在安装javaSE或其它版本时会注意到,在配置环境变量path之后,还需要新建一个名为CLASSPATH,变量值设为 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt. ...
- 极路由B70/极路由4增强版改spi,pb-boot启动后切换回nand刷nand breed
极路由B70/极路由4增强版改8脚spi-nor flash,编程器刷入pb-boot,启动后切换回nand,刷nand flash 的breed 刷好pb-boot的spi-nor flash待用. ...
- Vue.js-Day05【安装路由(vue-router)、如何使用vue-router、404配置、激活class、动态路由、编程式导航、路由嵌套、路由元信息、导航拦截】
Vue.js实训[基础理论(5天)+项目实战(5天)]博客汇总表[详细笔记] 目 录 1.单页面应用 1.1.多页面应用 1.2.单页面应用 1.3.vue-router 2.安装vue-rout ...
- 细思极恐,你真的会写java吗?
细思极恐,你真的会写java吗? 感觉这篇文章写的不错,推荐下. 细思极恐,你真的会写java吗?
- 装了java_下载安装Java
初学Java,似乎安装有那么一点不同(也就多了添加环境变量哈哈哈),我也小小记录一下. 自我介绍:win10 x64 1. 下载Java 用于现在大多数使用者用的是java 8,小白的我先安装java ...
- 怎么安装jdk和java_如何安装JAVA JDK?
我是win10系统,最近自学JAVA,需要安装JAVA JDK 但是从官网下载最新版本以后提示无法安装弹窗如图,该怎么解决 一.jdk下载与安装: 1.(https://www.oracle.com/ ...
- 容器安装java_在docker容器中安装Java(从宿主机向docker容器中拷贝文件)
操作系统 [root@Optimus /]# uname -a Linux Optimus 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2 ...
- ubuntu安装java_如何在Ubuntu系统上安装Java
作为Java开发人员,您将需要一次或两次在系统上安装它.与普遍的看法相反,在Ubuntu计算机上安装Java非常简单.在本文中,我们将说明以下三种在Ubuntu系统上安装稳定版本的Java的方法: 通 ...
最新文章
- php打印出来乱码_PHP输出中文乱码的解决方法(转载)
- xHTML+div布局:三个div,两边div宽度固定,中间div宽度自适应
- U-Boot 提供的基本命令
- Caffe: Faster-RCNN Python版本配置 (Windows)
- 倒计时5天!云栖大会低代码峰会即将开幕!
- TensorFlow图像数据预处理
- 怎么选最快dns服务器,如何选择DNS服务器网速最快?DNS优选win7win10系统设置方法图文教程...
- ice服务器修复教程,Bootice:系统引导菜单修复利器的功能解说
- 磁盘介质受写入保护(非u盘)解决办法
- GooglTest GoogleMock 实践感想三 死亡测试初步(1)
- Linux实战教学笔记53:开源虚拟化KVM(一)搭建部署与概述
- 使用python脚本抢购天猫和淘宝商品,0秒下单
- Depsolving loop limit reached
- 如何查看mysql的gtid_mode_配置MHA开启主从同步的时候会提示从库gtid_mode为ON的状态...
- Linux下U盘变成只读
- UVA 12325 Zombie's Treasure Chest
- (管用)电脑突然没声了
- 如何查看win7计算机的显卡是多少位的,如何查看咱们win764位旗舰版电脑是单显卡还是双显卡...
- css实现文字渐变并兼容IE浏览器
- 【nvivo11plus教程】01_nvivo介绍、案例与批注
热门文章
- 基于ArcGIS的全国1km路网密度格网栅格制作流程
- Golang 获取评论列表,以楼中楼的方式
- 计算机千分之一符号,科学网—万分之一符号, 千分之一符号 和PPM符号 - 丁祥欢的博文...
- 手动搜索迷宫游戏 c语言,C语言实现一个走迷宫小游戏(深度优先算法)
- 2020年保研夏令营回顾
- 用Python画佩奇完整版
- MATLAB 数值微积分
- C语言项目:接球小游戏(自制)!详细思路+源码分享
- 姑娘,你为什么要编程呢
- Mac OS X 背后的故事(六)Cordell Ratzlaff 引发的 Aqua 革命(上)