`
weigang.gao
  • 浏览: 491064 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

ubuntu12.04编译openJDK7

 
阅读更多

linux内核:uname -r 查看linux内核,我的是 3.11.0-15-generic

1.下载openjdk7源码

a.openJDK7源码地址:http://download.java.net/openjdk/jdk7/

另外openJDK8源码地址:http://download.java.net/openjdk/jdk8/

 

2.安装编译openJDK所需到依赖:

sudo aptitude build-dep openjdk-6 --安装编译openjdk-6所需到环境,里面包含了很多工具

sudo aptitude install openjdk-6-jdk  --安装openjdk,编译openjdk源码中到java部分

 

3.设置编译openJDK的环境变量:

export LANG=C

#设置本机上安装好到openjdk来编译源码,用java -ersion可以查看到本机jdk到版本信息

export ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk 

#允许在编译的时候自动进行下载依赖的东西
export ALLOW_DOWNLOADS=true

#使用预编译头文件,不是用这个会编译慢些
export USE_PRECOMPILED_HEADER=true

#设置编译好的openjdk 输出位置
export ALT_OUTPUTDIR=/users/openjdkbuild

#The default hotspot-build is all_product. Setting DEBUG_NAME would change the target.

export DEBUG_NAME=debug

unset JAVA_HOME
unset CLASSPATH

 

4.使用cd命令进入openjdk源码目录下

 

5.make sanity 测试一下

如果出现:Sanity check passed.则表示测试编译通过了,不过也别开心得太早,真正make的时候不保证一定没问题

 

6.make

 

FQA:

1. ERROR: error: "__LEAF" redefined [-Werror]

这个是已知的bug(http://hg.openjdk.java.net/hsx/hotspot-comp/hotspot/rev /a6eef545f1a2), 在hopspot下打入该patch(http://hg.openjdk.java.net/hsx/hotspot-comp/hotspot /raw-rev/a6eef545f1a2)即可

或者:从http://hg.openjdk.java.net/hsx/hotspot-comp/hotspot /raw-rev/a6eef545f1a2 这个页面下载zip替换openjdk7源码中到hotspot文件夹(注意将下载的文件夹名改为hotspot)

2. ERROR: echo "*** This OS is not supported:" 'uname -a'; exit 1;
这是由于内核版本太高了,两种方式解决:
方法一:

lichengwu@s4:~/bin$ uname -r
#查看当前的内核版本:
3.2.0-20-generic
修改文件/home/thebye85/jdk7/hotspot/make/linux/Makefile
#在这行最后加上当前的内核版本3.2%,如下:
lichengwu@s4:~/bin$ SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 2.7% 3.2%

方法二:

gedit hotspot/make/linux/Makefile

注释掉下面代码:
check_os_version:
#ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),)
# $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1;
#endif

3.sound错误

修改jdk/make/javax/sound/jsoundalsa/下的Makefile文件,将

LDFLAGS += -lasound

改成
EXTRA_LIBS += -lasound
否则编译出错

 

4.make[5]: *** [/home/ubuntu/openjdkbuild/lib/i386/libjsoundalsa.so] Error 1
解决:(注意openjdkbuild是编译的jdk输出路径)

ln -s lib/i386/libjsound.so lib/i386/libjsoundalsa.so

如果ln不行 就用cp

分享到:
评论

相关推荐

    ctags ubuntu 12.04 编译版本

    ctags ubuntu 12.04 编译版本,这里为了方便诸位编译ctags出错。奉献自己编译生成测ctags

    libc6 for ubuntu12.04

    标题“libc6 for ubuntu12.04”涉及的是Ubuntu 12.04操作系统中的一个关键系统库——libc6。这个标题表明这是一个针对该特定版本Ubuntu的libc6软件包,它是Linux系统中核心的C语言运行时库。 **libc6详解** libc6...

    ubuntu12.04编译内核模块

    Ubuntu 12.04 编译内核模块 一、前期准备 在 Ubuntu 12.04 下编译内核模块前,需要安装 essential 软件包,使用以下命令安装: `apt-get install build-essential` 这将安装编译内核模块所需的基本工具。 二、...

    Ubuntu12.04下编译成功的APUE附带源码

    《在Ubuntu 12.04环境下编译与学习APUE源码》 APUE(Advanced Programming in the UNIX Environment)是一本经典的UNIX/Linux系统编程教材,由Stephen R. Henderson和Richard Stevens共同撰写,旨在深入讲解UNIX...

    ubuntu12.04 SSH升级到OpenSSH_7.9p1, OpenSSL 1.1.1b

    原来的ssh扫描报太多漏洞了,整理了下一键安装的脚本直接升级到最新的;...#update Ubuntu12.04 : OpenSSH_7.9p1, OpenSSL 1.1.1b 26 Feb 2019 #old : OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 Mar 2012

    在ubuntu12.04下编译内核

    ### 在Ubuntu 12.04下编译Linux内核的知识点详解 #### 前言 编译Linux内核是一项复杂但具有高度定制性的任务,尤其对于希望深入理解操作系统底层工作原理或需要针对特定硬件进行优化的用户来说至关重要。本文将基于...

    opencv2.4.9 ubuntu12.04LTS i386下的编译包java

    在本场景中,我们关注的是OpenCV 2.4.9版本,特别针对Ubuntu 12.04 LTS(长期支持版)的i386架构进行了编译,并且集成了Java接口。这使得开发者能够在Java环境下利用OpenCV的功能。 OpenCV 2.4.9是该库的一个稳定...

    ubuntu 12.04 使用手册1—4

    《Ubuntu 12.04 使用手册1—4》是一套专为Ubuntu 12.04 LTS(长期支持版)用户编写的详尽指南,旨在帮助初学者和进阶用户掌握这一开源操作系统的基本操作与高级技巧。Ubuntu 12.04,代号“Precise Pangolin”,是...

    ubuntu10.04及12.04编译android环境搭建

    ubuntu10.04及12.04编译android环境搭建.txt

    ubuntu12.04编译android4.1.1_r6源代码步骤.pdf

    在本文中,我们将详细探讨如何在Ubuntu 12.04环境下编译Android 4.1.1_r6源代码。这个过程分为几个关键步骤,包括安装必要的软件、配置环境和下载源代码。 首先,确保你的硬件配置满足基本要求,例如拥有Intel Core...

    ubuntu12.04编译android4.1.1_r6源代码步骤定义.pdf

    在本文中,我们将详细探讨如何在Ubuntu 12.04上编译Android 4.1.1_r6源代码。这个过程对于开发者来说非常重要,因为它允许他们自定义和优化Android系统,创建特定功能的定制ROM或者进行底层系统调试。 首先,确保你...

    Ubuntu12.04 nginx python uwsgi Django安装步骤

    Ubuntu 12.04 下安装 Nginx、Python、uWSGI 和 Django 的步骤 在本文中,我们将介绍如何在 Ubuntu 12.04 环境下安装 Nginx、Python、uWSGI 和 Django。这些技术栈组合是非常流行的 Web 应用程序开发环境。 一、...

    ubuntu12.04编译android4.1.1_r6源代码步骤.docx

    ### Ubuntu 12.04 编译 Android 4.1.1_r6 源代码步骤 #### 硬件及操作系统环境 - **CPU**: Intel® Core™ i3-2310M CPU @2.10GHz × 4 - **内存**: 4GB - **硬盘**: 100GB - **操作系统**: Ubuntu 12.04 (64-bit) ...

    Ubuntu12.04菜鸟使用手册合集

    【Ubuntu12.04菜鸟使用手册合集】是一份专为初学者设计的资源,旨在帮助用户熟悉Ubuntu 12.04操作系统的基本操作和功能。Ubuntu是基于Debian的开源Linux发行版,以其易用性和稳定性而受到全球用户的喜爱。这份合集...

    andrid ubuntu12.04和14.04的编译环境

    andrid ubuntu12.04和14.04的编译环境,目前在开发android底层和中夹层,一直都用的整个编译环境,需要的小伙伴可以看看

    Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程

    Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程Ubuntu12.04菜鸟使用手册合集+Ubuntu标准教程Ubuntu12.04菜鸟使用手册合集+...

    学习ubuntu12.04入门指南

    《学习Ubuntu 12.04入门指南》是一份针对初学者的详尽教程,旨在帮助用户熟悉并掌握Ubuntu 12.04 LTS(长期支持版)操作系统的基础操作和特性。Ubuntu是基于Linux内核的开源操作系统,以其用户友好、易用性和强大的...

    Ubuntu 12.04 菜鸟使用手册(全)

    **Ubuntu 12.04 菜鸟使用手册(全)** Ubuntu 12.04 是一个基于Debian的开源操作系统,以其用户友好性和稳定性而受到广大用户的喜爱。这个版本,也被称作Precise Pangolin(精确的穿山甲),在2012年发布,提供长达...

    用 VMware 安装 Ubuntu 12.04详细过程图解

    用 VMware 安装 Ubuntu 12.04详细过程图解

Global site tag (gtag.js) - Google Analytics