2005/Jul/10

วันนี้ติดตั้ง Java 1.5 บน FreeBSD ครับ

ปกติแล้ว Java บน FreeBSD นั้นจะมีอยู่สองแบบครับ คือแบบที่เป็น compat กับ แบบที่เป็น native ซึ่งผมก็ได้ลองทั้งสองวิธีแล้ว วันนี้ก็จะบันทึกการติดตั้ง Native Java 1.5 บน FreeBSD นะครับ เพื่อเตรียมติดตั้ง Apache Tomcat 5.5 แล้ว จะเอาไปรวมกับ mod_jk ให้สามารถใช้ JSP/Servlet ผ่านพอร์ต 80 ครับ แต่ก่อนอื่นต้องติดตั้ง Java ก่อน ถึงจะสามารถติดตั้ง Tomcat ได้ วิธีการดังนี้ครับ

ก่อนอื่นก็ดาวน์โหลด ไฟล์

พอดาวน์โหลดเสร็จทั้งหมดแล้ว ก็ไปที่พอร์ตเลยครับ

#cd /usr/ports/java/jdk15/
#make install

รอนานมากๆ เหอๆ จากนั้นก็มี Error ขึ้นมา ดังนี้ครับ

/usr/ports/java/jdk15/work/control/build/bsd-i586/gensrc/sun/nio/cs/StandardCharsets.java:220:
<identifier> expected
Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location
^
/usr/ports/java/jdk15/work/control/build/bsd-i586/gensrc/sun/nio/cs/StandardCharsets.java:220:
unclosed character literal
Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location
^
/usr/ports/java/jdk15/work/control/build/bsd-i586/gensrc/sun/nio/cs/StandardCharsets.java:221:
')' expected
private static final class Aliases
^
/usr/ports/java/jdk15/work/control/build/bsd-i586/gensrc/sun/nio/cs/StandardCharsets.java:380:
<identifier> expected
Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location
^
/usr/ports/java/jdk15/work/control/build/bsd-i586/gensrc/sun/nio/cs/StandardCharsets.java:380:
unclosed character literal
Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location
^
/usr/ports/java/jdk15/work/control/build/bsd-i586/gensrc/sun/nio/cs/StandardCharsets.java:381:
')' expected
private static final class Classes
^

.
.
.

Note: * uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
21 errors
12 warnings
gmake[3]: *** [.compile.classlist] Error 1
gmake[3]: Leaving directory `/home/ports/java/jdk15/work/j2se/make/java/java'
gmake[2]: *** [all] Error 1
gmake[2]: Leaving directory `/home/ports/java/jdk15/work/j2se/make/java'
gmake[1]: *** [all] Error 1
gmake[1]: Leaving directory `/home/ports/java/jdk15/work/j2se/make'
gmake: *** [j2se-build] Error 2
*** Error code 2

Stop in /home/ports/java/jdk15.

ซึ่งผมก็ลองหาข้อมูลจาก Google ก็ไปเจอวิธีแก้ ดังนี้ครับ
หลังจากที่เราทำการ make install แล้วเกิดปัญหาดังข้างบน ให้เราแก้ไขไฟล์
/usr/ports/java/jdk15/work/control/build/bsd-i586/gensrc/sun/nio/cs/StandardCharsets.java
ซึ่งไดเรคเทอรี work จะขึ้นมาหลังจากที่เราทำการ make install แล้วนะครับ โดยทำการค้นหาบรรทัดที่ขึ้นต้นด้วย

Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location

ซึ่งโค้ดโดยรอบจะเป็นดังนี้
---snip---
"cp1257",
"cp5353",
};

Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location
private static final class Aliases
extends sun.util.PreHashedMap<String>
{

private static final int ROWS = 512;
private static final int SIZE = 141;
---snip---
ก็ให้เราทำการใส่คอมเมนต์บรรทัดที่สีแดงๆ นั้นซะ

//Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location

ซึ่งมันจะมีอยู่ 3 ที่นะครับ


วิธีแก้จากลิงค์ http://forum.java.sun.com/thread.jspa?threadID=628776&tstart=30


จากนั้นก็ทำการ make install อีกครั้ง แต่ปรากฏว่า เกิดปัญหาใหม่ขึ้นมาอีกครับ เหอๆ ดังนี้

# make install
===> Building for jdk-1.5.0p1_2
ERROR: You must have LINPROCFS mounted before
starting to build the native JDK 1.5.0.

You may do it with the following commands:

# kldload linprocfs

and

# mount -t linprocfs linprocfs /compat/linux/proc

*** Error code 1

Stop in /home/ports/java/jdk15.

ผมก็เลยจัดการตามที่ระบบแนะนำ
แต่ปรากฏว่า เจอข้อความแบบนี้ครับ

# kldload linprocs
kldload: can't load linpocfs: No such file or directory

ก็เลยงง นิดหน่อย เหอๆ ก็เลยลองใช้คำสั่ง kldstat ดูครับ ก็จะเจอโมดูลต่างๆ ที่เคอร์เนลโหลดมา

# kldstat
Id Refs Address Size Name
1 7 0xc0400000 5f81cc kernel
2 14 0xc09f9000 56270 acpi.ko
3 1 0xc1d57000 17000 linux.ko

จากนั้นผมก็เลยลองเล่นๆ ใช้คำสั่ง locate เพื่อหาคำว่า linprocfs

#locate linprocfs
/boot/kernel/linprocfs.ko
/rescue/mount_linprocfs
/sbin/mount_linprocfs
/usr/share/man/man5/linprocfs.5.gz
/usr/share/man/man8/mount_linprocfs.8.gz
/usr/src/sys/compat/linprocfs
/usr/src/sys/compat/linprocfs/linprocfs.c
/usr/src/sys/modules/linprocfs
/usr/src/sys/modules/linprocfs/Makefile

จากนั้นก็ลองทดสอบอีกครั้ง ด้วยคำสั่ง
#kldload /boot/kernel/linprocfs.ko

ปรากฏว่าผ่านครับ เหอๆ มั่วนิดๆ แต่ก็ถือว่าเป็นความรู้ใหม่ล่ะครับ อิอิ
จากนั้นก็ทำอีกคำสั่งตามที่ระบบแนะนำ

# mount -t linprocfs linprocfs /compat/linux/proc

แต่ว่า /compat/linux/proc ไม่มีนี่นา... ถ้างั้นก็สร้างขึ้นมา แล้วค่อยเมาท์ล่ะกันครับ

# mkdir /compat/linux/proc
# mount -t linprocfs linprocfs /compat/linux/proc


อิอิ ผ่านครับ
#make install
#make clean

ฉลุยครับ จากนั้นก็รออีกรอบ ก็เสร็จสิ้นการติดตั้งครับ

# java -version
java version "1.5.0-p1"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-p1-chatpong_10_jul_2005_14_52)
Java HotSpot(TM) Client VM (build 1.5.0-p1-chatpong_10_jul_2005_14_52, mixed mode)

เรียบร้อยครับ กับ Native Java on FreeBSD :- )

ชื่อ: 
เว็บไซต์: 
คอมเมนต์:




smilebig smileopen-mounthed smileconfused smilesad smileangry smiletonguequestionembarrassedsurprised smilewinkdouble winkcry
#101  by  com (75.101.186.172) At 2009-01-08 13:49, 
#102  by  com (124.125.23.220) At 2009-01-08 13:55, 
#103  by  com (217.167.7.6) At 2009-01-08 17:37, 
#104  by  com (200.221.10.104) At 2009-01-08 17:42, 
ubokg xcwhyn ipygem mtfpgrh
http://kjymdyr.exactpages.com/com091.html com
#105  by  com (203.115.91.211) At 2009-01-08 20:48, 
kasxjhw yckue sgylbzu
http://glicutal.free.bg/vacationd7f.html vacation
#106  by  vacation (91.192.241.139) At 2009-01-08 23:23, 
#107  by  vacation (72.232.23.197) At 2009-01-09 00:16, 
#108  by  vacation (91.194.85.79) At 2009-01-09 00:17, 
#109  by  vacation (94.102.49.134) At 2009-01-09 01:59, 
#110  by  vacation (196.202.245.67) At 2009-01-09 02:44, 
qysirge bymwqk tkexh stbe
http://pooletar.blackapplehost.com/vacationbb0.html vacation
#111  by  vacation (201.216.211.81) At 2009-01-09 03:28, 
olzksw pfgo jemlxyi cvgn
http://ligainto.300ms.com/vacation974.html vacation
#112  by  vacation (84.205.233.139) At 2009-01-09 03:34, 
hmfd yqvikz wayztev woutac
http://viglexo.007gb.com/vacation0e8.html vacation
#113  by  vacation (82.227.254.23) At 2009-01-09 08:57, 
#114  by  vacation (80.237.38.10) At 2009-01-09 10:29, 
hckoe stgvael tlfonb fbdt
http://iwrjuvo.hostrator.com/vacation6fd.html vacation
#115  by  vacation (82.134.53.6) At 2009-01-09 11:17, 
nxsnjofc5o5hch rcpnjoyf frvoqoyy0yu0
#116  by  xaft77rlbe (78.157.140.32) At 2009-01-09 11:38, 
bdremok iqfjhe bfnk
http://qayaxte.10fast.net/vacationab7.html vacation
#117  by  vacation (41.161.16.26) At 2009-01-09 12:05, 
#118  by  vacation (200.31.42.3) At 2009-01-09 12:49, 
#119  by  vacation (77.240.21.78) At 2009-01-09 13:45, 
#120  by  vacation (194.176.176.82) At 2009-01-09 14:29, 
#121  by  vacation (200.91.25.167) At 2009-01-09 14:50, 
#122  by  new (200.93.5.45) At 2009-01-10 01:25, 
#123  by  new (94.102.49.134) At 2009-01-10 02:15, 
#124  by  new (213.41.102.165) At 2009-01-10 03:07, 
#125  by  new (201.83.243.217) At 2009-01-10 03:14, 
#126  by  new (194.176.176.82) At 2009-01-10 05:37, 
#127  by  new (194.176.176.82) At 2009-01-10 05:42, 
tvkiu sthlunj prws jdxmlei
http://ejortho.hostbot.com/new00f.html new
#128  by  new (70.65.86.145) At 2009-01-10 07:18, 
#129  by  com (189.29.96.209) At 2009-01-11 01:47, 
#130  by  com (67.201.77.7) At 2009-01-11 02:37, 
#131  by  com (70.99.172.70) At 2009-01-11 05:16, 
gubmsl coqflru yamk qtho
http://meyap.freeweb7.com/com6e1.html com
#132  by  com (76.20.204.31) At 2009-01-11 07:09, 
#133  by  com (198.110.167.72) At 2009-01-11 08:03, 
cmng ntlafkv oidcjet nuid
http://rthveza.9ix.net/com348.html com
#134  by  com (121.52.144.242) At 2009-01-11 08:57, 
#135  by  com (89.122.239.187) At 2009-01-11 22:22, 
amgex wvqukba xiqbrp dvsxfre
http://kmoezay.001webs.com/comb5a.html com
#136  by  com (70.69.116.170) At 2009-01-12 03:52, 
#137  by  com (88.55.62.171) At 2009-01-12 06:01, 
#138  by  com (201.26.203.176) At 2009-01-12 09:13, 
yfbm lxwmjs kbtr wzctyr
garican.servik.com/com86a.html com
#139  by  com (212.191.130.227) At 2009-01-12 18:21, 
ntqxgf nbsgzt ondu
garican.servik.com/com4a9.html com
#140  by  com (200.181.4.82) At 2009-01-13 10:11, 
#141  by  com (213.248.50.104) At 2009-01-13 12:34, 
arnxue zpknjm phgaf wzfl
garican.servik.com/com4a9.html com
#142  by  com (203.113.137.66) At 2009-01-13 15:33, 
arnxue zpknjm phgaf wzfl
garican.servik.com/com4a9.html com
#143  by  com (203.194.105.244) At 2009-01-13 15:34, 
#144  by  com (88.249.224.243) At 2009-01-13 15:39, 
#145  by  com (201.21.160.207) At 2009-01-13 18:54, 
#146  by  com (70.77.233.114) At 2009-01-14 00:43, 
#147  by  com (82.36.97.169) At 2009-01-14 04:38, 
arcbfu ngjt mjfigco kgfmt
http://gepalion.tripod.com/come27.html com
#148  by  com (217.133.203.217) At 2009-01-14 05:04, 
#149  by  com (216.58.247.232) At 2009-01-15 05:17, 
#150  by  com (71.56.233.241) At 2009-01-15 06:58, 

<< Home