在 Ubuntu Edgy 6.10 中成功安装 JBuilder 2006 Enterprise Edition !
2007-02-09 00:14
531 查看
首先告诉大家,拿到了JBuilder 2006的软件包直接跑到Ubuntu Edgy上开装铁定是会失败的!
为什么呢?因为Borland在开发JBuilder 2006的时候,是以某些内核版本比较低的Linux发行版进行开发的,我们先看看Borland给出的Release Notes中的说明吧:
现在用Ubuntu 6.10作为JBuilder 2006的运行平台,会存在一些兼容的问题,原因是JDK的某些版本对NPTL支持不是很好,很大程度上还是依赖于LinuxThread Library的实现。
关于Linux中线程库的实现改变,我简单说明如下(没有仔细考究,大家凑活一下... ^ ^||| ):
已知在NPTL上面存在问题的Java VM有:Sun JRE < 1.4.1 和 IBM JRE (版本不知,再次汗!)
所以呢,一般的做法会用更改LD_ASSUME_KERNEL环境变量的方法去强制改变内核默认的线程库的实现,使用旧的LinuxThread模式:
说到这里让我们回到开头,为什么JBuilder 2006在Ubuntu Edgy上面会安装失败呢?甚至连安装的界面都出不来呢!?--b
我们看看这个操作就知道了:
所以说见鬼:“JBuilder 2006默认的安装文件中却还是要使用旧的线程库模式,但Ubuntu Edgy里面已经没有了LinuxThread的实现”!
改变LD_ASSUME_KERNEL的值,我们会得到下面的错误,顺便说一句,我的Java版本是1.5.0_08 :
那么,要如何来Hack呢?
把整个光盘的内容复制到用户目录中的一个目录中(如~/Temp/JBE2006),操作如下:
这样就可以看到之前在Windows中熟悉的安装向导界面了,直接“下一步,下一步”继续...!
安装完成后,JBuilder 2006如下:
为什么呢?因为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 |
关于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(弃用) |
所以呢,一般的做法会用更改LD_ASSUME_KERNEL环境变量的方法去强制改变内核默认的线程库的实现,使用旧的LinuxThread模式:
LD_ASSUME_KERNEL 对应 LinuxThread 的说明 | |
2.4.19 | Linuxthreads with floating stacks |
2.2.5 | Linuxthreads without floating stacks |
我们看看这个操作就知道了:
[xport@ubuntu ~] $ grep "LD_ASSUME_KERNEL" /media/cdrom/Disk1/InstData/Linux/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 ~] $ |
改变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 |
把整个光盘的内容复制到用户目录中的一个目录中(如~/Temp/JBE2006),操作如下:
[xport@ubuntu ~] $ cd ~/Temp/JBE2006/Disk1/InstData/Linux/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 ~/Temp/JBE2006/Disk1/InstData/Linux/VM/install.bin LAX_VM /usr/lib/jvm/java-1.5.0-sun/jre/bin/java |
安装完成后,JBuilder 2006如下:
相关文章推荐
- 在 Ubuntu Edgy 6.10 中成功安装 JBuilder 2006 Enterprise Edition !
- 在 Ubuntu Edgy 6.10 中成功安装 JBuilder 2006 Enterprise Edition !
- 在 Ubuntu Edgy 6.10 中成功安装 JBuilder 2006 Enterprise Edition !
- ubuntu 6.10 edgy下安装jdk1.6和永中office2007
- ubuntu 6.10下安装Borland Together 2006
- Ubuntu Edgy 6.10 安装源列表
- DirectFB在ubuntu10.04 下的安装及样例程序运行成功体现
- Ubuntu edgy 硬盘安装找不到ISO
- 关于在ubuntu10.04版本(而且该版本安装了OPEN JDK时),安装SUN JAVA遇到了几个问题并且安装成功
- Ubuntu 14.04下成功安装ffmpeg与编译配置opencv-2.4.10
- Ubuntu9.04 安装MadWifi成功 总结贴
- ubuntu16.04 下安装oh-my-zsh成功后bash与zsh之间的切换
- ubuntu中eclipse下安装pydev插件不成功及解决方法
- Ubuntu13.04下编译GCC-4.8.2源码并安装成功
- 神舟K650c i7(W350STQ)上成功装好Mac OS X 10.9,兼谈如何安装WinXP、7、8.1、OSX、Ubuntu五系统(Chameleon、MBR)
- win7系统怎么利用ubuntu17.10安装双系统,亲测成功
- Ubuntu 6.10硬盘安装手记
- ubuntu oracle 成功安装过程
- Ubuntu 16.04 Google-Chrome 安装成功但打开失败 解决方案
- 安装UBUNTU6.10系统心得--检测不到硬盘