您的位置:首页 > 编程语言 > Java开发

ubuntu下编译openjdk 并在eclipse调试hotspot

2015-04-20 14:19 411 查看
一:准备工作:(资源下载地址 http://yunpan.cn/cVNeXxt6DpnLQ (提取码:54f1))

1) ubuntu11.04 32位

2) https://jdk7.java.net/source.html http://www.java.net/download/openjdk/jdk7u40/promoted/b43/openjdk-7u40-fcs-src-b43-26_aug_2013.zip

3)jdk jdk-6u45-linux-i586.bin
4)eclipse4.2 C++版 (我在安装的时候 有幸Ubuntu系统上面带有jdk8 上面的jdk6不能启动eclipse4.2 推荐3.X版本的C++版eclipse)
二:开始编译

①在主目录下建立文件夹work 是这样的 /home/faicm/work 然后把需要的软件全部放在work下。

②安装jdk jdk-6u45-linux-i586.bin是一个可执行文件 。 在work下 ./jdk-6u45-linux-i586.bin

完了之后配置环境变量 在/etc/profile文件下面加入: ( 命令 sudo gedit /etc/profile)
export JAVA_HOME=/home/faicm/work/jdk1.6.0_45
export PATH=$JAVA_HOME/bin:$PATH


使用 source /etc/profile 使更改生效

如果 jdk-6u45-linux-i586.bin不能执行
则可以 执行 >> chmod +x jdk-6u45-linux-i586.bin

③安装所需软件

>>sudo apt-get install mercurial gawk g++ gcc libcups2-dev libasound2-dev libfreetype6-dev libx11-dev libxt-dev libxext-dev libxrender-dev libxtst-dev libfontconfig1-dev  ant


④解压openjdk >>unzip openjdk-7u40-fcs-src-b43-26_aug_2013
得到openjdk文件夹

在openjdk文件夹中新建buildjdk.sh文件(编译过程中出错,如果修复错误后,可以继续执行buildjdk.sh)
加入:

export LANG=C
export ALT_BOOTDIR=/home/faicm/work/jdk1.6.0_45
export ALLOW_DOWNLOADS=true
export USE_PRECOMPILED_HEADER=true
export SKIP_DEBUG_BUILD=false
export SKIP_FASTDEBUG_BUILD=true
export DEBUG_BINARIES=true
export DEBUG_NAME=debug
unset CLASSPATH
unset JAVA_HOME
make sanity  && make


⑤执行 >>./bulidjdk.sh 注意把系统时间改为2014年,注意直接执行,不要加sudo。

三:导入eclipse

FIle-》new -》other and then ‘c/c++’-》makefile project
在这一步选择 linux gcc 下面是图片。

一:导入 下面第一行 FIle-》new -》other and then ‘c/c++’-》makefile project with existing code 和下面的 /home/faicm....../gamma这个就是导入的过程

二:运行 在项目上右键 debug as configure 然好按照图的下半部分设置。图中显示的就是所有需要设置的。

三:注意 下面是截图,一个整体的图。



如图:请仔细看图然后导出。

四:编写类Main.java

public class Main {
public static void main(String[] args) {
System.out.println("hello openjdk");
}
}


用编译好的javac进行编译生成 Main.class文件 放在gamma文件夹下(也可能上一级或者下一级目录)

运行刚才配置好的eclipse,加上参数Main(与上面同名,不带.class) 。进入debug,如果放开debug后就会看到打印了 hello openjdk

错误 : 可能遇到的错误会贴在下面或者评论 ctrl+f 搜
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: