美文网首页
编译openjdk遇到的问题

编译openjdk遇到的问题

作者: msrpp | 来源:发表于2018-09-29 22:16 被阅读24次

编译jdk8,9都是成功的,但是运行的时候遇到了这个问题。

Error: A fatal exception has occurred. Program will exit.
localhost:bin jjchen$ ./java -version
openjdk version "1.8.0-internal"
OpenJDK Runtime Environment (build 1.8.0-internal-jjchen_2018_09_13_10_00-b00)
OpenJDK 64-Bit Server VM (build 25.71-b00, mixed mode)
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGILL (0x4) at pc=0x0000000107487f47, pid=88445, tid=0x0000000000002603
#
# JRE version: OpenJDK Runtime Environment (8.0) (build 1.8.0-internal-jjchen_2018_09_13_10_00-b00)
# Java VM: OpenJDK 64-Bit Server VM (25.71-b00 mixed mode bsd-amd64 compressed oops)
# Problematic frame:
# V  [libjvm.dylib+0x487f47]
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /Users/jjchen/jvm/jdk8u-dev/build/macosx-x86_64-normal-server-release/jdk/bin/hs_err_pid88445.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
#

把系统的libjvm.dylib 拷贝到jdk/lib/server中程序可以运行,说明是编译的jvm库出了问题。
后来调试的时候发现崩在了这个文件中的函数。/Users/jjchen/jvm/jdk8u-dev/hotspot/src/share/vm/runtime/perfData.cpp。把"delete p;"这行注释掉可以正常停止了。
这个问题花了好几天,记录一下。

void PerfDataManager::destroy() {

  if (_all == NULL)
    // destroy already called, or initialization never happened
    return;

  for (int index = 0; index < _all->length(); index++) {
    PerfData* p = _all->at(index);
    delete p;
  }

  delete(_all);
  delete(_sampled);
  delete(_constants);

  _all = NULL;
  _sampled = NULL;
  _constants = NULL;
}

相关文章

  • 编译openjdk遇到的问题

    编译jdk8,9都是成功的,但是运行的时候遇到了这个问题。 把系统的libjvm.dylib 拷贝到jdk/lib...

  • 在Mac上编译OpenJDK

    Mac上编译OpenJDK 最近想研究下OpenJDK,本想着一路通畅,不想还是遇到几个问题,顺势我就把它记录下来...

  • 自己动手编译OpenJDK

    Linux下 编译 Centos 下编译OpenJDK Mac下编译 MacOS 下编译OpenJDK Windo...

  • 使用openjdk遇到的问题

    本项目使用 open jdk1.8.0_40-b25,在此期间遇到以下问题 一、证书问题 因为open jdk 未...

  • 卸载openJDK

    sudo apt-get remove openjdk*解决ubuntu编译aosp报错问题:error whil...

  • OpenJDK编译(Build OpenJDK)

    JDK发布至今,大家的使用方式基本是从官网下载一个版本,然后直接安装(windows)或者解压至指定的目录,配置环...

  • OpenJDK编译

    bash ./configure --with-target-bits=64 --with-boot-jdk=/h...

  • OpenJDK编译

    说明 操作系统:CentOS7OpenJDK源码:openjdk-7u40-fcs-src-b43-26_aug_...

  • openjdk编译

    系统环境: 14.04.1-Ubuntu编译目标:openjdk7u 操作步骤: 1. 安装水银 apt-get ...

  • Mac OSX 10.12.1 编译 Openjdk 9

    推荐阅读: OpenJDK Home Page OpenJDK Build README(官方编译步骤,下载完源码...

网友评论

      本文标题:编译openjdk遇到的问题

      本文链接:https://www.haomeiwen.com/subject/yfcsoftx.html