<div align="left">
<br>
<font size="2" style="color: rgb(0, 0, 128);"><span style="font-family: Tahoma;">自从JDK 1.1.8后,FreeBSD 因为在 Java 授权上的种种问题,已经不能发布预编译的 JDK 软件包,也没有了所谓的 Official Release 了 。<br><br>现在要在FreeBSD上使用最新的Java技术,需要通过下面的方式自己编译并进行安装:</span></font>
<br>
<br>
<font size="2" style="color: rgb(0, 0, 128);"><span style="font-family: Tahoma;">(1) FreeBSD + Linux compatibility enable + Linux Process FileSystem mounted</span><strong style="font-family: Tahoma;"><br></strong><span style="font-family: Tahoma;">(2) </span><a href="https://sdlcweb2a.sun.com/ECom/EComActionServlet;jsessionid=87C3FD20D3BCF5947A0487512406E315" rel="noopener noreferrer" style="font-family: Tahoma;" target="_blank"><strong>Linux Platform - Java(TM) 2 SDK, self-extracting file</strong></a><strong style="font-family: Tahoma;"><br></strong><span style="font-family: Tahoma;">(3) </span><a href="http://www.sun.com/software/communitysource/j2se/java2/download.xml" rel="noopener noreferrer" style="font-family: Tahoma;" target="_blank"><strong>SCSL (Sun Community Source Licensing) Source</strong></a><strong style="font-family: Tahoma;"><br></strong><span style="font-family: Tahoma;"> -SCSL Source</span><strong style="font-family: Tahoma;"><br></strong><span style="font-family: Tahoma;"> -SCSL Binaries - needed to complete source build</span><strong style="font-family: Tahoma;"><br></strong><span style="font-family: Tahoma;"> -Mozilla Binaries</span><strong style="font-family: Tahoma;"><br></strong><span style="font-family: Tahoma;">(4) </span><a href="http://www.eyesbeyond.com/freebsddom/java/" rel="noopener noreferrer" style="font-family: Tahoma;" target="_blank"><strong>BSD Java porting patchsets</strong></a></font>
<br>
<br>
<font size="2" style="color: rgb(0, 0, 128);"><span style="font-family: Tahoma;">编译实际上是在FreeBSD的Linux兼容模式下,以Linux JDK Binary为基础,将SCSL Source打上BSD的patch后,在FreeBSD上面编译出native的JDK版本!(哇塞,真是拗口~~~!!!)</span></font>
<br>
<br>
<font size="2" style="color: rgb(0, 0, 128);"><span style="font-family: Tahoma;">所以,以FreeBSD 5.4 Release为例子,我们第一步要做的就是修改 /etc/fstab 这个文件, 新增:</span></font>
</div>
<table align="left" border="0" cellpadding="0" cellspacing="0" width="790"><tbody><tr><td bgcolor="#000000">
<div align="left">
<br>
<font color="#c0c0c0"><font face="Courier New" size="2">linprocfs /compat/linux/proc linprocfs rw 0 0<br> <br></font></font>
</div>
<div align="left">
<font color="#c0c0c0"></font>
</div> </td></tr></tbody></table>
<div align="left">
<br>
<br>
<br>
<br>
<font size="2" style="color: rgb(0, 0, 128);"><span style="font-family: Tahoma;">重新启动后,可以用kldstat查看是否已经mount上了Linux process FileSystem:</span></font>
</div>
<table border="0" cellpadding="0" cellspacing="0" width="780"><tbody><tr><td bgcolor="#000000">
<div align="left">
<br>
<font color="#c0c0c0" face="Courier New"><font size="2">FreeBSD# kldstat<br>Id Refs Address Size Name<br> 1 10 0xc0400000 5dde24 kernel<br> 2 14 0xc09de000 56270 acpi.ko<br> 3 1 0xc1803000 6000 <font color="#ffff00">linprocfs.ko</font><br> 4 1 0xc180c000 17000 <font color="#ffff00">linux.ko<br> <br></font></font></font>
</div>
<div align="left">
<font color="#c0c0c0" face="Courier New" size="2"></font>
</div> </td></tr></tbody></table>
<div align="left" style="font-family: Tahoma; color: rgb(0, 0, 128);">
<font size="2"><br>接下来,当然是要升级到最新的ports tree了:</font>
</div>
<table border="0" cellpadding="0" cellspacing="0" width="790"><tbody><tr><td bgcolor="#000000">
<div align="left">
<br>
<font color="#c0c0c0" face="Courier New" size="2">FreeBSD# cd /usr/ports<br>FreeBSD# cvsup -g -L 2 /root/ports-supfile<br> <br></font>
</div>
<div align="left">
<font color="#c0c0c0" face="Courier New" size="2"></font>
</div> </td></tr></tbody></table>
<div align="left">
<br>
<font size="2" style="color: rgb(0, 0, 128);"><span style="font-family: Tahoma;">然后,进入到JDK的port目录下,我使用的是JDK14:</span></font>
</div>
<table border="0" cellpadding="0" cellspacing="0" width="790"><tbody><tr><td bgcolor="#000000">
<div align="left">
<br>
<font color="#c0c0c0" face="Courier New" size="2">FreeBSD# cd /usr/ports/java/jdk14 <br>FreeBSD# make<br> <br></font>
</div>
<div align="left">
<font color="#c0c0c0" face="Courier New" size="2"></font>
</div> </td></tr></tbody></table>
<div align="left" style="font-family: Tahoma; color: rgb(0, 0, 128);">
<font size="2"><br>如果是初次编译,应该会看到下面的提示:</font>
</div>
<div align="left">
<table border="0" cellpadding="0" cellspacing="0" width="790"><tbody><tr><td bgcolor="#000000"> <br><font color="#c0c0c0" face="Courier New" size="2">FreeBSD# make <br>===> jdk-1.4.2p7_1 : |
|