踩坑一:建议安装英文版
踩坑二:vi 命令 方向键不听指挥
编辑/etc/vim/vimrc.tiny 使用root权限操作
将“compatible”改成“nocompatible”
新增一个配置:
set backspace=2
修改网络配置信息:
sudo vi /etc/network/interfaces 网络配置文件
sudo /etc/init.d/networking restart 重启网络配置
auto ens33 # 静态ip,不采用DHCP动态分配 iface ens33 inet static # 配置ip address 192.168.80.25 # 子网掩码 netmask 255.255.255.0 # 网关 gateway 192.168.1.4 配置DNS dns-nameservers 223.5.5.5
源配置:
sudo vi /etc/apt/sources.list
deb http://cn.archive.ubuntu.com/ubuntu/ lucid main restricted
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid main restricted
deb http://cn.archive.ubuntu.com/ubuntu// lucid-updates main restricted
deb-src http://cn.archive.ubuntu.com/ubuntu// lucid-updates main restricted
deb http://cn.archive.ubuntu.com/ubuntu/ lucid universe
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid universe
deb http://cn.archive.ubuntu.com/ubuntu/ lucid-updates universe
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid-updates universe
deb http://cn.archive.ubuntu.com/ubuntu/ lucid multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ lucid multiverse
deb http://cn.archive.ubuntu.comm/ubuntu/ lucid-updates multiverse
deb-src http://cn.archive.ubuntu.comm/ubuntu/ lucid-updates multiverse
deb http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-src http://security.ubuntu.com/ubuntu lucid-security main restricted
deb http://security.ubuntu.com/ubuntu lucid-security universe
deb-src http://security.ubuntu.com/ubuntu lucid-security universe
deb http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-src http://security.ubuntu.com/ubuntu lucid-security multiverse
sudo apt-get update
增加JDK源
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
安装JDK
sudo apt-get install openjdk-11-jdk / openjdk-8-jdk
编译JDK需要JDK7的环境
编译JDK
使用 JDK 7 编译 JDK 8
bash ./configure \
--with-target-bits=64 --with-boot-jdk=/opt/software/jdk1.7.0_80 \
--with-debug-level=slowdebug \
--enable-debug-symbols ZIP_DEBUGINFO_FILES=0
在编译期间需要
sudo apt-get install libX11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev
开始编译之后根据提示安装必要的插件
最后使用 bear 命令进行编译代码
bear make all
途中会遇到些许问题
解决问题的博客:OpenJDK8编译调试_bear make_shizhan.dev的博客-CSDN博客
vi hotspot/make/linux/Makefile
修改:
SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3%
为
SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3% 4% 5%
vi hotspot/make/linux/makefiles/adjust-mflags.sh
添加一个大写I
然后使用命令 make clean
最后执行 bear make all
eclipse 安装
注意安装Eclipse 时,需要注意JDK版本
当前eclipse需要的JDK版本最小是 JDK8
所以,如果是高版本的eclipse可能需要 GTK 环境 这里我选择的是 eclipse 2019
并配置 -vm 指定JDK的目录
然后即可启动完成。
调试Hotspot
使用 eclipse 导入Hotspot源码,这里选择的 JDK 8 的源码。
选择源码
导入代码,开始配置
选择配置JDK,目录选中,之前编译好的 JDK 源码 build 包。
至此就准备工作就完成了
CentOS
gnu/stubs-32.h:No such file or directory的解决方法
这个问题是由于缺少32位兼容包,解决办法:
Ubuntu: sudo apt-get install libc6-dev-i386
CentOS:yum -y install glibc-devel.i686
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.8.5/libgcc_s.so when searching for -lgcc_s
/usr/bin/ld: cannot find -lgcc_s
collect2: error: ld returned 1 exit status
提示cannot find -lxxx。这个报错是因为缺少libxxx.so的库导致。
yum provides */libxxx.so
yum provides */libgcc_s.so
安装 glibc 源码
这里使用的是 glibc 2.19
源码下载地址:
下载,并解压
创建安装目录:
新建一个安装目录:/opt/glibc-build-2.19
sudo ../glibc-2.19/configure --prefix=/opt/glibc-2.19
使用 make -j 4 表示多核处理
make install 表示安装编译