ubuntu20比较新, 编译openjdk8需要安装老版本的编译工具.
安装gcc4.9 g++4.9
1, 增加源
deb http://dk.archive.ubuntu.com/ubuntu/ xenial main
deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe
sudo vim /etc/apt/sources.list sudo apt update
2, 安装
sudo apt-get install gcc-4.9 sudo apt-get install g++-4.9
3, 配置多版本gcc控制
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 50 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 50 sudo update-alternatives --config gcc
安装make3.8.1
1, 下载地址 http://ftp.gnu.org/gnu/make/, 解压并进入make-3.81文件夹
2, 修改配置
修改glob/glob.c文件, 注释掉这两行 (不修改会报错)
// #if !defined __alloca && !defined __GNU_LIBRARY__
// #endif
3, 编译安装
./configure --prefix=/usr/local/make-3.81 sudo make install
4, 配置make3.8.1到环境变量
profile文件第一行加入PATH=/usr/local/make-3.81/bin:$PATH
sudo vim /etc/profile source /etc/profile
下载linux openjdk7
下载地址 http://jdk.java.net/java-se-ri/7, 下载后解压
下载openjdk8源码
1, 下载地址 cyliang1113/jdk-sync-github-210728 这个是从github同步的
选择tag为jdk8-b100下载, 解压并进入文件夹
2, 修改配置
修改hotspot/make/linux/Makefile文件 (遇到*** This OS is not supported错误, 是内核版本问题)
SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3% 4% 5%
修改hotspot/make/linux/makefiles/gcc.make文件 (遇到cc1plus: all warnings being treated as errors错误, 是要忽略警告)
WARNINGS_ARE_ERRORS = -Wno-all
编译命令
bash configure --with-boot-jdk=/home/leo/Dev_workspace/java-se-7u75-ri --with-debug-level=slowdebug --enable-debug-symbols ZIP_DEBUGINFO_FILES=0 --with-extra-cflags=-Wno-all --with-extra-cxxflags=-Wno-all make all ZIP_DEBUGINFO_FILES=0
configure时会提示缺少的依赖, 按照提示安装即可
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)