ป้ายกำกับ

วันพุธที่ 21 ธันวาคม พ.ศ. 2554

ปัญหาการอัพเกรด Rational Team Concert

หลังจากที่ผมได้เคยแนะนำการติดตั้งโปรแกรม Rational Team Concert (RTC) 3.0.1 ไปแล้ว พร้อมทั้งได้เล่าประสบการณ์ที่ทำให้เสียเวลาไปเป็นเดือนในการแก้ปัญหาการใช้งานบนระบบปฏิบัติการ Ubuntu รวมทั้งได้แนะนำวิธีการสร้างโครงการใน RTC ไว้แล้ว ใครสนใจก็สามารถย้อนกลับไปอ่านได้เลยนะครับ

สำหรับครั้งนี้ เป็นปัญหาการอัพเกรด RTC ไปเป็นรุ่น 3.0.1.1 ซึ่งปล่อยออกมาเมื่อวันที่ 14 ตุลาคม 2554 นี้เอง พอดีผมเพิ่งจะมีเวลา ก็เลยเข้าไปดาวโหลดและติดตั้ง แต่ก็พบปัญหาคือ ตัวโปรแกรม IBM Installation Manager (IM) ที่จะใช้ติดตั้งโปรแกรมต่างๆของ IBM กลับใช้งานไม่ได้ โปรแกรมมันเงียบไปเฉยๆ ไม่ทำงานอะไร และไม่มีข้อความอะไรแสดงออกมาเลย ก็เลยเป็นปัญหาว่า แล้วมันเกิดอะไรขึ้น แล้วจะแก้ไขได้อย่างไร

เนื่องจากโปรแกรม IM ไม่ทำงาน ผมจึงพยายามหาทางลองติดตั้งใหม่ แต่ก็พบว่า หาโปรแกรม IM มาติดตั้งได้ยากมาก เพราะ IBM ไม่ได้ทำไว้ให้ดาวโหลดแยกเป็นโปรแกรม ส่วนใหญ่จะมีมากับโปรแกรมอื่นๆอยู่แล้ว แต่ถ้าผมจะอธิบายยืดยาวว่าไปหามาได้ไงก็คงจะเสียเวลาเปล่า เอาเป็นว่า สรุปว่า ปัญหาไม่ใช่โปรแกรม IM เสีย แต่เป็นปัญหาที่ตัว Ubuntu ของผมเอง ที่ขาดบางอย่างไป (เฮ้อ เสียเวลาไปตั้งหลายวัน) 

ถ้าจะเล่าไอ้ที่ผมเสียเวลาไปลองทำโน่นทำนี่เพื่อจะแก้ปัญหา แต่สุดท้ายแล้วไม่ใช่ มันก็คงจะยืดยาวไป และเสียเวลาอีกนั่นแหละ เอาเป็นว่าขอสรุปสั้นๆคือ หลังจากที่ผม Update Ubuntu ซึ่งทำเป็นประจำ และก็ไม่เคยมีปัญหาอะไร ปรากฏว่ามีอยู่ครั้งหนึ่งเมื่อ 1-2 เดือนที่ผ่านมา ที่โปรแกรม libc6-i386 รวมทั้งแพ็คเกจอื่นๆบางตัวมันหายไป (เวลา Update Ubuntu ให้ระวัง ถ้ามันแจ้งว่าดาวโหลดแพ็คเกจบางตัวไม่ได้ ก็อย่าเพิ่งติดตั้ง เพราะมันอาจจะทำให้ระบบรวนได้) ซึ่งที่ผมรู้ก็เพราะมีโปรแกรมบางตัวใช้งานไม่ได้ เช่น Chrome อาการที่แสดงออกมาก็ทำนองเดียวกับ IM เลยล่ะครับ คือ เงียบ ไม่แสดงผลใดๆ แต่ตอนนี้ผมแก้ปัญหาของ Chrome ได้นานแล้ว คราวนี้โปรแกรม IM มันขาดอะไรล่ะ คำตอบคือ ไม่รู้

ผมก็พยายามขุดๆข้อมูลที่พอจะเอาออกมาดูได้ ก็พบว่า โปรแกรม IM มันจะสร้าง log ไฟล์ ไว้ที่โฟลเดอร์ configuration เช่น สำหรับแพ็คเกจ RTC ที่ผมดาวโหลดมา จะอยู่ที่ im/linux.gtk.x86/configuration (โปรแกรม IM บนระบบปฏิบัติการ Linux ที่ใช้ gtk และเครื่องที่ใช้ซีพียู x86) ก็ได้พบ error ตามข้างล่างนี้

!SESSION 2011-12-16 21:54:23.205 -----------------------------------------------
eclipse.buildId=unknown
java.fullversion=J2RE 1.5.0 IBM J9 2.3 Linux x86-32 j9vmxi3223ifx-20080811 (JIT enabled)
J9VM - 20080809_21892_lHdSMr
JIT  - 20080620_1845_r8
GC   - 200806_19
BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_GB
Framework arguments:  -toolId install -accessRights admin -input @osgi.install.area/install.xml -input @osgi.install.area/install-server.xml
Command-line arguments:  -os linux -ws gtk -arch x86 -toolId install -accessRights admin -input @osgi.install.area/install.xml -input @osgi.install.area/install-server.xml

!ENTRY org.eclipse.osgi 4 0 2011-12-16 21:54:25.456
!MESSAGE Application error
!STACK 1
java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
/home/somchai/Downloads/Rational/RTC3.0.1/im/linux.gtk.x86/configuration/org.eclipse.osgi/bundles/213/1/.cp/libswt-pi-gtk-3655.so (libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory)
swt-pi-gtk (Not found in java.library.path)
/tmp/swtlib-32/libswt-pi-gtk-3655.so (libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory)
/tmp/swtlib-32/libswt-pi-gtk.so (/tmp/swtlib-32/liblibswt-pi-gtk.so.so: cannot open shared object file: No such file or directory)....
ปรากฏว่า ข้อความ error บอกว่าโหลดไลบราลี่ SWT ไม่ได้ ผมก็งงๆ เมื่อตรวจสอบดูก็พบว่ามี libswt ติดตั้งอยู่ในเครื่องแล้ว แต่ path ที่ error แสดงออกมานั้นมันเป็นไลบรารี่ของ IM ที่ /tmp/swtlib-32/ ซึ่งเป็นโฟลเดอร์ชั่วคราว ผมก็สังเกตุเห็นว่ามันเป็น SWT-32 ซึ่งก็น่าจะเป็นไลบราลี่แบบ 32 บิต แต่เครื่องที่ผมใช้งานอยู่เป็น amd64 แสดงว่ามันต้องเป็นปัญหาของการโหลด 32บิตไลบราลี่ บน OS 64 บิตแน่ๆ ผมเคยพบปัญหานี้มาบ้างแล้วบน Windows 64 บิต บางครั้งมันก็เกิดปัญหาเวลาที่เราเอาโปรแกรม 32 บิตไปรัน เอ แล้ว Ubuntu นี่มันจะแก้ยังไง คำตอบคือ ไม่รู้

ผมก็พยายามหาข้อมูลต่อไป สังเกตุว่าโปรแกรม IM นี้เป็นโปรแกรมภาษา Java และใช้ JRE ของ IBM เอง ผมก็พยายามหาว่า แล้วจะเอา JRE 64 บิตมาแทน แต่ก็พบความยุ่งยากอีกหลายอย่าง เพราะภายในตัว IM นั้น มีสคริปที่เซ็คค่าต่างๆที่เกี่ยวข้องกับ JRE อีกหลายที่หลายจุด ถ้าเปลี่ยนตรงนี้ สงสัย ผมอาจจะต้องเข้าไปแก้ตัว IM มันก็จะกลายเป็นเรื่องใหญ่เกินไป

พยายามหาข้อมูลอยู่นาน ... เอาเป็นว่า ผ่านไป 1 สัปดาห์ ก็ยังไม่ได้คำตอบ

สุดท้ายวันนี้ไปพบบล็อก Honza’s perspective ที่เขียนเกี่ยวกับ RTC และการติดตั้งบน 64 บิต Ubuntu ไว้ว่าให้ติดตั้งแพ็คเกจ ia32-libs และ libstw-gtk-x.x-jni (ซึ่งมีอยู่แล้วในเครื่องผม) ผมก็เลยติดตั้ง ia32-libs เพิ่มเข้าไป สุดท้ายทุกอย่างก็กลับมาใช้งานได้เป็นปกติ ก็เลยบันทึกไว้และเผยแพร่ให้ผู้ที่ติดปัญหาแบบเดียวกัน จะได้ไม่เสียเวลามากมายอย่างที่ผมเจอมา


ไม่มีความคิดเห็น:

แสดงความคิดเห็น