设为首页 加入收藏

TOP

移植Java虚拟机到mini2440
2014-11-24 11:10:52 来源: 作者: 【 】 浏览:0
Tags:移植 Java 虚拟 mini2440

一、选用sun的phoneme https://phoneme.dev.java.net/


二、下载
http://download.java.net/mobileembedded/phoneme/advanced/phoneme_advanced-mr2-dev-src-b97-20_nov_2008.zip


三、解压
unzip phoneme_advanced-mr2-dev-src-b97-20_nov_2008.zip


四、修改makefile
cd phoneme_advanced_mr2/cdc/build/linux-arm-generic
gedit GNUmakefile
修改 CVM_TARGET_TOOLS_PREFIX=/usr/local/arm/4.3.2/bin/arm-linux- 为自己的交叉编译器的地址
修改 USE_AAPCS = false 为 true


五、输出PATH
export PATH=/usr/local/arm/4.3.2/bin/:$PATH 为自己的交叉编译器的地址


六、编译
make


八、出错
../../src/linux-arm/javavm/runtime/segvhandler_arch.c:45:26: error: asm/ucontext.h: No such file or directory
../../src/linux-arm/javavm/runtime/segvhandler_arch.c: In function 'handleSegv':
../../src/linux-arm/javavm/runtime/segvhandler_arch.c:224: error: dereferencing pointer to incomplete type
../../src/linux-arm/javavm/runtime/segvhandler_arch.c:285: error: dereferencing pointer to incomplete type
../../src/linux-arm/javavm/runtime/segvhandler_arch.c:285: error: dereferencing pointer to incomplete type
../../src/linux-arm/javavm/runtime/segvhandler_arch.c:286: error: dereferencing pointer to incomplete type
../../src/linux-arm/javavm/runtime/segvhandler_arch.c:294: error: dereferencing pointer to incomplete type
修改 segvhandler_arch.c 文件
gedit ../../src/linux-arm/javavm/runtime/segvhandler_arch.c
修改
#define ucontext asm_ucontext
#include

//#define ucontext asm_ucontext //注释掉这句
#include //去掉arm/


九、编译
make
编译成功!
ls
可以看到在当前目录有
bin lib testclasses.zip


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android 对listview数据的增删改查 下一篇mini2440 移植 Java虚拟机的错误..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·【C语言】动态内存管 (2025-12-27 06:23:20)
·C语言中的内存管理 - (2025-12-27 06:23:16)
·C语言指南:C语言内 (2025-12-27 06:23:14)
·Redis on AWS:Elast (2025-12-27 04:19:30)
·在 Spring Boot 项目 (2025-12-27 04:19:27)