博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ubuntu 16.04系统下 对OpenJDK编译好的Hotspot 进行调试
阅读量:6348 次
发布时间:2019-06-22

本文共 1425 字,大约阅读时间需要 4 分钟。

hot3.png

经过一番挣扎终于成功讲Hotspot导入NetBeans中进行调试。

一.安装NetBeans(所谓工欲善其事,必先利其器 

        下载的时候有些注意点

  • NetBeans的每个版本中按语言的支持程度分为好几种,这里我们需要的支持c/c++就可以了,理由很简单,因为Hotspot编译好以后是c++或者c文件。
  • 不同版本,我指的是NetBeans8.2、8.1、8.0、7.4等版本对JDK版本是有要求的,所以最好下载一个最新版本的jdk(JDK不会装可以参考我),理由是在安装NetBeans的时候会要求你有jdk的支持,软件本身运行需要jdk支持。
  • 安装的时候,由于是Linux版的,下载下来的是XXX.sh文件,ll一下看这个文件的权限发现不能执行,所以先在终端执行chmod +x XXX.sh赋予此文件执行的权限,然后./XXX.sh即可,卸载也是同理。还有疑问的可以

二.导入Hotspot

        同样有些注意点

  • 看我选项
  •  
  • 这里要选择定制
  •  
  • 找到make目录下的Makefile文件,NetBeans是根据这个来构建项目的。
  • 之后直接下一步下一步finsh即可

三.配置一些参数(重要)

  • 项目右键->属性打开
  • 第一步配置make,选择构建命令一栏然后输入下面一段配置
  • ${MAKE} -f Makefile clean jvmg
  • 根据自己的JDK路径来配置注意这个路径和之前安装NetBeans时候的JDK可以不是同一个,这个JDK和你时候编译用哪个有关
    ALT_BOOTDIR=/home/maozuowei/software/jdk/jdk1.6/jdk1.6.0_45
  • 这个属性表示你的电脑是64位的
    ARCH_DATA_MODEL=64
    LANG=C
    ZIP_DEBUGINFO_FILES=0
  • 第二步配置运行(这个每个人的情况都可能不一样),

    文件搜索命令:locate:快,这个是从var/lib/mlocate.db里找的,系统默认一天自动更新,用sudo updatedb可以强制更新。只能搜索文件名。在终端输入locate gamma,这个时候可能会出现很多路径,找到像这样的路径/home/maozuowei/software/openjdk/build-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg/gamma    一般结尾都是这个样子的,目录各自都不同。然后将你搜到的路径复制一份,黏贴到运行命令栏目里。然后配置环境变量,配置JAVA_HOME、CLASSPATH、LD_LIBRARY_PATH

  • 博主例子:

  • LD_LIBRARY_PATH    /home/maozuowei/software/openjdk/build-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg

  • JAVA_HOME    /home/maozuowei/software/jdk/jdk1.6/jdk1.6.0_45

  • CLASSPATH    ${JAVA_HOME}/jre/lib/rt.jar;${JAVA_HOME}/bin;${JAVA_HOME}/lib/tools.jar

四.点击运行,出现下图所示那么大功搞成

不足之处请各位指正,不懂可以留言。

 

        

 

 

 

转载于:https://my.oschina.net/Spider001/blog/1517672

你可能感兴趣的文章
linux运维常见英文报错中文翻译(菜鸟必知)
查看>>
[原][osgEarth]添加自由飞行漫游器
查看>>
代码审查 Code Review
查看>>
fastjson如何指定字段不序列化
查看>>
[日常] Go语言圣经--示例: 并发的Echo服务
查看>>
BZOJ1969: [Ahoi2005]LANE 航线规划(LCT)
查看>>
linux内存管理之malloc、vmalloc、kmalloc的区别
查看>>
GreenDao 数据库升级 连接多个DB文件 或者指定不同的model&dao目录
查看>>
M1卡破解(自从学校升级系统之后,还准备在研究下)【转】
查看>>
vue 访问子组件示例 或者子元素
查看>>
linux内核--自旋锁的理解
查看>>
银行卡的三个磁道
查看>>
OpenSSL 提取 pfx 数字证书公钥与私钥
查看>>
Keepalived详解(四):通过vrrp_script实现对集群资源的监控【转】
查看>>
CollapsingToolbarLayoutDemo【可折叠式标题栏,顺便带有CardView卡片式布局】
查看>>
CentOS7.4安装配置mysql5.7 TAR免安装版
查看>>
解决IE二级链接无法打开故障
查看>>
Windows phone应用开发[16]-数据加密
查看>>
SQL Server 迁移数据到MySQL
查看>>
通用数据压缩算法简介
查看>>