亚洲成精品动漫久久精久,九九在线精品视频播放,黄色成人免费观看,三级成人影院,久碰久,四虎成人欧美精品在永久在线

掃一掃
關注微信公眾號

在Ubuntu安裝JBuilder 2006 Enterprise
2007-02-10   中國IT實驗室

首先告訴大家,拿到了JBuilder 2006的軟件包直接跑到Ubuntu Edgy上開裝鐵定是會失敗的!

為什么呢?因為Borland在開發JBuilder 2006的時候,是以某些內核版本
比較低的Linux發行版進行開發的,我們先看看Borland給出的Release Notes中的說明吧:

Borland® JBuilder® 2006 Enterprise for Linux
  • Intel Pentium III/800 MHz or higher (or compatible)
  • Red Hat® Enterprise Linux 3.0
  • Novel SuSE Enterprise Linux 9

現在用Ubuntu 6.10作為JBuilder 2006的運行平臺,會存在一些兼容的問題,原因是JDK的某些版本對NPTL支持不是很好,很大程度上還是依賴于LinuxThread Library的實現

關于Linux中線程庫的實現改變,我簡單說明如下(沒有仔細考究,大家湊活一下... ^ ^||| ):

Linux Distribution Linux Kernel GNU C Library Linux Threading Library
Red Hat® Enterprise Linux 3.0 kernel-smp-2.4.21-3.EL.i686 glibc-2.3.x, compat-glibc-2.2.4 NPTL,LinuxThread
Ubuntu Edgy 6.10 2.6.17-10-generic SMP i686 glibc-2.4 NPTL,LinuxThread(棄用)

已知在NPTL上面存在問題的Java VM有:Sun JRE < 1.4.1 和 IBM JRE (版本不知,再次汗!)


所以呢,一般的做法會用更改LD_ASSUME_KERNEL環境變量的方法去強制改變內核默認的線程庫的實現,使用舊的LinuxThread模式:

LD_ASSUME_KERNEL 對應 LinuxThread 的說明
2.4.19 Linuxthreads with floating stacks
2.2.5 Linuxthreads without floating stacks

說到這里讓我們回到開頭,為什么JBuilder 2006在Ubuntu Edgy上面會安裝失敗呢?甚至連安裝的界面都出不來呢!?--b

我們看看這個操作就知道了:

[xport@ubuntu ~] $ grep "LD_ASSUME_KERNEL" /media/cdrom/Disk1/InstDatahttp://Linux.chinaitlab.com/VM/install.bin
linux_LD_ASSUME_KERNEL_hack=0;
linux_LD_ASSUME_KERNEL_hack=1
# LD_ASSUME_KERNEL for Native POSIX Threading Library on some Linux distros
export LD_ASSUME_KERNEL=2.2.5
# unset the LD_ASSUME_KERNEL in cause we don't need it
unset LD_ASSUME_KERNEL
# check our rules for setting LD_ASSUME_KERNEL
linux_LD_ASSUME_KERNEL_hack=1
if [ $linux_LD_ASSUME_KERNEL_hack -eq 1 ]; then
LD_ASSUME_KERNEL=2.2.5
export LD_ASSUME_KERNEL <-- 這里有賦值的動作,要用到LinuxThread的線程模式

[xport@ubuntu ~] $

所以說見鬼:“JBuilder 2006默認的安裝文件中卻還是要使用舊的線程庫模式,但Ubuntu Edgy里面已經沒有了LinuxThread的實現”!

改變LD_ASSUME_KERNEL的值,我們會得到下面的錯誤,順便說一句,我的Java版本是1.5.0_08


[xport@ubuntu ~] $ export LD_ASSUME_KERNEL=2.4.19

[xport@ubuntu ~] $ ls
ls: error while loading shared libraries: librt.so.1: cannot open shared object file: No such file or directory


那么,要如何來Hack呢?

把整個光盤的內容復制到用戶目錄中的一個目錄中(如~/Temp/JBE2006),操作如下:

[xport@ubuntu ~] $ cd ~/Temp/JBE2006/Disk1/InstDatahttp://Linux.chinaitlab.com/VM

/* 對安裝文件進行備份 */

[xport@ubuntu VM] $ mv ./install.bin ./install.bin.borland

/* 把原本安裝文件中的LD_ASSUME_KERNEL操作注釋掉,并寫入新文件 */
[xport@ubuntu VM] $ cat ./install.bin.borland | sed "s/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/" > ./install.bin

[xport@ubuntu VM] $ chmod a+x ./install.bin
[xport@ubuntu VM] $ cd ~

/* 請務必改寫Shell提示符,以免Install AnyWhere報錯 */
[xport@ubuntu ~] $ export PS1="> "

/* 建議用Ubuntu的JDK進行安裝 */
> sh ./install.bin LAX_VM /usr/lib/jvm/java-1.5.0-sun/jre/bin/java


這樣就可以看到之前在Windows中熟悉的安裝向導界面了,直接“下一步,下一步”繼續...!

安裝完成后,JBuilder 2006如下:

""

熱詞搜索:

上一篇:Vista并不安全九成以上病毒均可運行
下一篇:系統安全防范之Linux下簡單的入侵檢測

分享到: 收藏