本文向大家简单介绍一下如何把JVM移植到arm环境中,主要有其个小步骤,相信通过本文的介绍你对JVM移植的问题的解决方法有深刻的认识。
如何把JVM移植到arm环境中
环境:
以下是引用片段: OS:ubuntu,scratchbox->arm |
我实际移植JVM的步骤:
1 提供linux里面libX打头的那些库,它会提示你在configure的过程中,你根据需要下载并安装,有时候只需要做个连接,因为它需要的是.so,而不是.so.X.X等等,比如ln-slibXtst.so.6.1.0libXtst.so
2 下载jamvm-1.5.1.tar.gz从http://sourceforge.net/project/showfiles.php?group_id=75148/&abmode=1./configure
3 安装jikes。
以下是引用片段: dpkg-buildpackage-fakeroot-uc-b dpkg-i../jikes_XXX.deb |
4 下载classpath-0.92.tar.gz从ftp://ftp.gnu.org/gnu/classpath/./configure–with-jikes–enable-jni
当然如果要保证编译通过的话,你们必须提供jikes工具和mozilla的相关的头文件,也可以通过./configure–with-jikes–enable-jni–disable-plugin来跳过plugin的编译,如果你们不提供web页的插件的话;实际上在第一步环境配置的时候我们提供的环境里面已经有这些相关的类库了,所以如果只是为了开发应用程序的话是,是不需要再编译的这个包的
5 编译的时候记得看readme和install;
6 exportjamvm环境到PATH中;
exportPATH=/usr/local/jamvm/bin:$PATH,这时候可以通过jamvm-version来看版本信息了;
7 classpath里面有许多的examples,比如可以通过jamvmgnu.classpath.examples.swing.Demo来执行示例代码;
一切ok了,绝大部分的java程序是可以跑的了。
后记:
我后来重新做了一遍,发现放在我们的板子上经常会出现这样的一个问题:
以下是引用片段: “Cannotcreatesystemclassloader Exceptionoccurredwhileprintingexception(java/lang/NoClassDefFoundError)… Originalexceptionwasjava/lang/UnsatisfiedLinkError” |
我把/usr/local/classpath/share/classpath/glibj.zip展开后,重新copy到我的板子的/mnt/tflash上,然后
以下是引用片段: cd/usr/local ln-s/mnt/tflash/classpathclasspath jamvmHelloWorld |
输出
以下是引用片段: HelloWolrd! |
程序正常运行,说明JVM移植成功。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
JVM垃圾收集器使用调查:CMS最受欢迎
近日,Plumbr公司对特定垃圾收集器使用情况进行了一次调查研究,研究数据使用了84936个案例。在明确指定垃圾收集器的13%的案例中,并发收集器(CMS)使用次数最多。
-
为什么要用消息中间件?什么时候用?
消息中间件的主要类型和用户案例有哪些?在众多技术领域里面,中间件往往是厨房的洗涤盆。
-
漫谈Java理念的转变与JVM的五大优势
当Java最初诞生的时候,它可以说是其他语言的进化版。但随着时间的流转,现今的Java理念发生了怎样的变化?
-
优化Java堆大小的五个技巧
做为Java程序员,在编写完程序后你可能会发现一些性能上的问题。这里Pierre发现许多性能问题都是由Java堆容量不足和调优引起的,并分享了5个Java堆优化技巧。