当前位置:首页 » 编程软件 » linuxopenjdk编译

linuxopenjdk编译

发布时间: 2022-09-05 05:30:17

Ⅰ 如何在虚拟机上的linux编译java

下载vmware解压后根据提示正触安装vmware到硬盘中
(1)
建立虚拟机
a.用鼠标左建双击桌面中的"vmware
workstation"图标,运行虚拟机
b.建立一台虚拟机。点击“file(文件)”-“new(新建)”--“newvirtual
machine(
新建虚拟机)”,弹出虚拟机创建菜单。
c.根据向导一步一步地创建虚拟机,首先选择安装方式是“typical(典型)”还是
“custom(自定义)”安装。
我这里选择典型。
d.因为这里是用于安装redhat,所以在guest
operating
system(客户操作系统)“
中选择”linux“,点击下一步。
e.在virtual
machine
name(虚拟机名字)中输入你想建立的虚拟机的名字
f.在location(位置)中选择虚拟机的安装位置。因为会在虚拟机中安装操作系统
和应用软件,所以建议将虚拟机安装在一个有较大空间的磁盘分区中
g.如果你的电脑连接在网络中,那么选择一个合适的网络环境。我这里选择
use
bridged
net-working(使用路由网络)
h.点击finish,返回vmware主界面,linux虚拟机就建好了。
2.
安装操作系统
a.
选中linux虚拟机,点击vmware工具栏中的power
on按钮,启动linux虚拟机
b.然后插入redhat7.3光盘,虚拟系统根据你选择的安装方式开始安装。
3.从硬盘安装redhat7.3
如果你认为从光驱中安装比较费时间,又不方便,那你可以将光盘文件转换成iso文件拷
贝在硬盘中,然后从硬盘安装。
a.点击settings(设置)--configuration
editor(编辑配置)进入设置界面对虚拟机进行
配置。
b.在hardware(硬件)选项中,选择dvd/cd--rom[ide
1:0]项,在左边的选项中进行设置。
c.在connection(连接)选项选中use
iso
image(使用iso镜像包),然后点击browse(预览)
按钮,找到放置iso文件的目录。
d.在打开对话框中选择redhat.iso文件,然后点击打开,将iso文件打开(如果第一个iso
文件安装完后,计算机提示你插入第二张光盘,则在此选择redhat.iso,如此类推)
e.在virtual
device
mode(虚拟设备模式)选择虚拟设备的接口方式,选择ideo:0项
然后点击ok返回到虚拟机界面下,点击power
on就可以直接从硬盘安装操作系统了

Ⅱ 如果在 Linux快速搭建 java openjdk 编译环境

Linux直接打个命令就装好了呀 很简单的
比如ubuntu,打sudo install openjdk-7-jdk
或者你在软件中心,点下安装按钮也行
Linux下面装软件最方便了

Ⅲ 编译openjdk总是出现这个问题,怎么解决

(1)/etc/profileexportJAVA_HOME=/usr/java/jdk1.7.0_67-cloudera/exportPATH=$PATH:$JAVA_HOME/binexportJRE_HOME="$JAVA_HOME/jre"exportCLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/rt.jar修改完成后,使用source/etc/profile命令进行更新;(2)下面这几步比较重要,因为在许多linux系统中都预装了openjdk,所以即使上面进行了这些设置,系统默认的还不是我们要设置的内容;如果要真正使用我们自己的jdk,还需要一下步骤:sudoupdate-alternatives--install/usr/bin/javajava/usr/java/jdk1.7.0_67-cloudera/bin/java300sudoupdate-alternatives--install/usr/bin/javacjavac/usr/java/jdk1.7.0_67-cloudera/bin/javac300(这里的300只是标识一下,没什么意义,只是下一步要用到)(3)大功告成,使用java-version命令来查看我们的java环境变量,显示如下内容:javaversion"1.7.0_05"Java(TM)SERuntimeEnvironment(build1.7.0_05-b06)JavaHotSpot(TM)ServerVM(build23.1-b03,mixedmode)*对于更新一个/usr/bin/xxx命令指向一个新的路径可以用sudoupdate-alternatives--configxxx

Ⅳ win7 下面怎么编译一个openjdk

好久没有在windows下编过了,以前我是找vs2010 express来编的,遇到过类似的问题,不
过时间太长不确认是不是同一个了。
你可以看一下对应makefile里面COMPILER_VERSION是怎么获取的。我印象中是根据cl.exe
的输出然后截取字符串来确认版本的,在某些版本/语言下,字符串与makefile代码中的预
期不一致,导致这个变量没有写进去。
详细一些的攻略可以看我这篇文章4
不过我衷心建议你搞个linux来编,我在ubuntu10.10下需要的东西一个apt-get就结束了,
win下找各种依赖的东西很费时间,尤其是编那个破freetype。

Ⅳ Linux下的JDK和OpenJDK有什么具体的区别

OpenJDK是JDK的开放原始码版本,以GPL(General
Public
License)协议的形式放出(题主提到的open就是指的开源)。在JDK7的时候,OpenJDK已经作为JDK7的主干开发,SUN
JDK7是在OpenJDK7的基础上发布的,其大部分原始码都相同,只有少部分原始码被替换掉。使用JRL(JavaResearch
License,Java研究授权协议)发布。至于OpenJDK6则更是有其复杂的一面,首先是OpenJDK6是JDK7的一个分支,并且尽量去除Java
SE7的新特性,使其尽量的符合Java6的标准。关于JDK和OpenJDK的区别,可以归纳为以下几点:
授权协议的不同:OpenJDK采用GPL
V2协议放出,而SUN
JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL
V2允许在商业上使用,而JRL只允许个人研究使用。
OpenJDK不包含Deployment(部署)功能:部署的功能包括:Browser
Plugin、Java
Web
Start、以及Java控制面板,这些功能在OpenJDK中是找不到的。
OpenJDK源代码不完整:这个很容易想到,在采用GPL协议的OpenJDK中,SUN
JDK的一部分源代码因为产权的问题无法开放给OpenJDK使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码。因此这些不能开放的源代码
将它作成plug,以供OpenJDK编译时使用,你也可以选择不要使用plug。而Icedtea则为这些不完整的部分开发了相同功能的源代码
(OpenJDK6),促使OpenJDK更加完整。
部分源代码用开源代码替换:由于产权的问题,很多产权不是SUN的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free
Type代替。
OpenIDK只包含最精简的JDK:OpenJDK不包含其他的软件包,比如Rhino
Java
DB
JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入。
不能使用Java商标:这个很容易理解,在安装OpenJDK的机器上,输入“java
-version”显示的是OpenJDK,但是如果是使用Icedtea补丁的OpenJDK,显示的是java。
总之,在Java体系中,还是有很多不自由的成分,源代码的开发不够彻底,希望Oracle能够让JCP更自由开放一些,这也是所有Java社区所希望的。

Ⅵ 如何用Mac完美编译OpenJDK 7

1.选择OS X版本很重要。
目前这里Mac版本是10.10,配置好必要信息以后就开始编,结果错误满屏。简单看过之后发现是编译C文件的时候参数有误,于是查了一下,才知道是LLVM版本太新,不兼容低版本的一些编译参数。照着上面改了点代码,但是依旧编译不过。既然高版本不行,就装个低版本的呗。由于最新的OS X不能装低版本的Xcode(装了Xcode才能装LLVM),所以去下了一个10.8的OS X装在虚拟机里,然后再装个Xcode4.4。
装好Xcode以后,要手动下载LLVM安装。打开Xcode,随便建立一个空项目,然后打开Preferences,找到如下所示的地方开始安装
第一步咱就这么搞定了。
2.安装X11
X11这玩意是unix类os使用的图形系统,10.8以前的OS X是自带的,但是从此以后就不自带了。对应于Mac,你需要装XQuartz,这个没有版本限制,去网上下最新版即可。装这个的原因是当时在编译PolicyTools的时候出现了如下错误:
ld: library not found for -lX11
安装以后要为X11建立软连接
sudo ln -s /usr/X11/include/X11 /usr/include/X11
3.安装freetype
在linux下编译openjdk的朋友可能遇到过需要安装freetype的要求,然后安装下并将安装目录加到环境变量里就好了。但是OS X不一样,freetype单独安装实际是没用的。虽然单独安装能让编译前的检查通过,但是到后面还是会出错,至于原因我没找到。那怎么办呢?实际上如果安装好X11,freetype就一起安装好了,大家可以去X11的目录里看看是否有freetype。
虽然说安装了X11就自带freetype,但是编译过程中可能会出现如下错误:
error: freetype/config/ftheader.h: No such file or directory
实际上就是目录问题,执行下面这句命令就好了:
sudo ln -s /sr/X11/include/freetype2/freetype/ /usr/X11/include/freetype
4. 配置环境变量
和在Linux下编译相比,OS X的环境变量配置相对来说简单很多。只需要配置编译需要的jdk和llvm的目录就可以了。
因为很多源代码都是用本机现有的jdk来编译,所以预装一个低版本的jdk是必须的,这里我们需要安装jdk6。安装好以后,找到其安装目录,并添加如下环境变量:
[plain] view plain
export ALT_BOOTDIR=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
通常来说安装目录都应该在/System/Library/Java/JavaVirtualMachines目录下。如果不在的话,有个技巧可以找到。因为安装好jdk以后,系统会自动在/usr/bin下建立指向java命令的软连接,所以执行“ls -l /usr/bin/java”就能看到这个命令指向哪,然后这么顺着找下去就能找到。
llvm是编译C类文件所必须的,所以要把它的所在目录添加到环境变量里。通常OS X下安装app都会把app移到Applications目录下,所以我最初安装Xcode的时候也把他移进去了,如果你把Xcode放在了别的目录,那就找到对应的目录即可。
[plain] view plain
export ALT_COMPILER_PATH=/Applications/Xcode.app/Contents/Developer/usr/bin
5.获取编译源码
按照这上面的第三点获取源代码 如果没有装hg的需要自行安装
到现在为止,编译前的准备工作已经完成。我们可以先执行make sanity执行下编译前的检查。如果检查通过,先来看看具体的编译命令:

[plain] view plain
make ALLOW_DOWNLOADS=true SA_APPLE_BOOT_JAVA=true SKIP_DEBUG_BUILD=false SKIP_FASTDEBUG_BUILD=false ALWAYS_PASS_TEST_GAMMA=true HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu`
这里有两个问题:

a. ALLOW_DOWNLOADS=true表示编译过程中允许下载。因为有些编译模块,比如jaxp,编译脚本中指定了需要下载特定的包。虽然我没试过设置成false会不会影响编译,但是还是推荐设置成true。但是这就带来另一个问题,下载这类包很费时间,有时候就会在那卡很长时间,所以我根据编译日志找到编译脚本中控制下载的具体命令,修改修改并且把用迅雷下的对应包放到正确目录中,然后重新编译一遍,就能顺利通过了。这一点后面我会详说。
b. SKIP_DEBUG_BUILD=false SKIP_FASTDEBUG_BUILD=false这两个表示编译出来的jdk或者hotspot是否可以debug。FASTDEBUG表示的应该是提供简单的debug功能,如果想要完整的debug,则SKIP_DEBUG_BUILD必须设置为false。不过这里提醒一点,如果想在debug jdk的时候能看到debug信息,比如变量名等,只需要SKIP_FASTDEBUG_BUILD设置为false就可以了
如果这两个问题都不是问题,那么就可以按回车了。如果debug和fastdebug都是false,再加上用虚拟机编译,所以需要的时间会比较长,你也许需要找一部长一点的电影来消磨一下了。最后编译出来的结果是这样的:
j2sdk-image就是自己编译出来的jdk,可以直接用了。至于其他目录下的内容,各位自己琢磨吧。
现在来说下ALLOW_DOWNLOADS=true引起的问题。
但是遇到下载很久的包总共有三个:
jaxp145_01.zip、jdk7-jaf-2010_08_19.zip、jdk7-jaxws2_2_4-b03-2011_05_27.zip
之前说过可以修改编译脚本跳过下载并且用我们已经下载好的,但是实际编译过程中,这三个包对应的的编译脚本是动态生成的,所以只能等到他卡在那了,才能停下来并找到脚本修改之。因此因为这三个包,总共需要停3次。,比起一直卡在那好太多了。
假设编译的是普通版本,即非DEBUG和非FASTDEBUG。下面以jaxp145_01.zip为例子讲一下怎么修改对应脚本:
脚本所在位置:openjdk根目录/build/macosx-universal/jaxp/build/xml_generated/build-drop-jaxp_src.xml

Ⅶ Linux sun jdk和open jdk 会不会冲突导致oracle安装失败呢

不会冲突,使用的时候是需要制定主目录的,指向那个jdk就用哪个版本。
openjdk是jdk的开放原始码版本,以GPL协议的形式放出。在JDK7的时候,openjdk已经成为jdk7的主干开发,sun jdk7是在openjdk7的基础上发布的,其大部分原始码都相同,只有少部分原始码被替换掉。使用JRL(JavaResearch License,Java研究授权协议)发布。
关于JDK和OpenJDK的区别,可以归纳为以下几点:
1、授权协议的不同:
openjdk采用GPL V2协议放出,而JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用。
OpenJDK不包含Deployment(部署)功能:
部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,这些功能在Openjdk中是找不到的。
2、OpenJDK源代码不完整:
这个很容易想到,在采用GPL协议的Openjdk中,sun jdk的一部分源代码因为产权的问题无法开放openjdk使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码。因此这些不能开放的源代码将它作成plug,以供OpenJDK编译时使用,你也可以选择不要使用plug。而Icedtea则为这些不完整的部分开发了相同功能的源代码(OpenJDK6),促使OpenJDK更加完整。
3、部分源代码用开源代码替换:
由于产权的问题,很多产权不是SUN的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替。
openjdk只包含最精简的JDK:
OpenJDK不包含其他的软件包,比如Rhino Java DB JAXP……,并且可以分离的软件包也都是尽量的分离,但是这大多数都是自由软件,你可以自己下载加入。
4、不能使用Java商标:
这个很容易理解,在安装openjdk的机器上,输入“java -version”显示的是openjdk,但是如果是使用Icedtea补丁的openjdk,显示的是java。(未验证)
总之,在Java体系中,还是有很多不自由的成分,源代码的开发不够彻底,希望Oracle能够让JCP更自由开放一些,这也是所有Java社区所希望的。

Ⅷ linux编译openjdk7 报错undefined reference to不知道怎么添加引用

将 int mian() 修改为 int main()

Ⅸ 如何交叉编译openjdk 使之能在arm-Linux中运行

直接下载OpenJDK8源码肯定不通过。有一个专门的移植工程:

hg clone http://hg.openjdk.java.net/aarch64-port/jdk8/

hg clone http://hg.openjdk.java.net/aarch64-port/jdk8u/


这个有时无法下载,使用:

https://github.com/AdoptOpenJDK/openjdk-aarch64-jdk8u

关于OpenJDK的编译,这个博客记录最为详细,所有问题都有解决办法:

网页链接

热点内容
c语言中变量类型 发布:2025-02-13 17:52:20 浏览:258
ftp导出报错 发布:2025-02-13 17:41:20 浏览:997
脚本下载教程 发布:2025-02-13 17:39:06 浏览:235
解压密码re 发布:2025-02-13 17:39:02 浏览:558
linuxdump内存 发布:2025-02-13 17:37:30 浏览:57
游戏客户端源码 发布:2025-02-13 17:37:19 浏览:594
win7打开文件夹声音 发布:2025-02-13 17:35:03 浏览:606
用php做计算 发布:2025-02-13 17:27:43 浏览:447
老编程软件 发布:2025-02-13 17:27:43 浏览:768
看别人解压 发布:2025-02-13 17:16:17 浏览:270