xport
xport的公告
Blog 访问量:
Web Counter
 
【 研习中的技术领域 】
最近评论
faye0412:还在考虑是否采用这种方式处理...
cc:/libexec/ld-elf.so.1: /lib/libpthread.so.2: version LIBTHREAD_1_0 required by /usr/local/diablo-jdk1.5.0/bin/java not found

装jdk后 出现这个错误是什么原因呢?
xport:楼上有大半年没有过来串门了吧?汗~~~
果树:一如既往的BT
saber:请问下 如果想要整合以后可以同时处理php和jsp的页面该怎么做?
文章分类
收藏
    相册
    Instant Message
    Gtalkr
    Meebo
    Online Tools
    Code2HTML
    CodeColorizer
    Insert Code
    猫扑ICON
    Open Source
    Apache Foundation
    Code Project
    Cygwin FAQ
    GNU Manuals Online
    Mozilla Developer Center
    SourceForge
    网络百科全书
    Answers
    Computer Gripes
    Gollum (English)
    Gollum (中文内容)
    How Stuff Works
    Howto Forge
    IT术语祥解
    系统管理维护
    File Extension Source
    WhatIsThatFile
    WinTasks Process Library
    进程知识库
    友达天下
    [ Group : EverAUO ]
    Aston
    Bob Chen
    Heaven
    Interain
    My Oh My
    Rico Zhao
    XO,在路上
    YSL的专栏
    一条路
    傲羽天涯
    华进的Blog
    天堂
    小聪Blog
    开放源代码的力量
    旧石 (Old Stone)
    果树的窝
    此前
    解琳*系琳
    追求简单,追求快乐
    阿正和他的臭虫们
    青蛙CiCi
    友情链接
    傲气雄鹰
    存档
    订阅我的博客
    XML聚合  FeedSky

    原创 在 Ubuntu Edgy 6.10 中成功安装 JBuilder 2006 Enterprise Edition !收藏

    新一篇: Linux中通过缓存DNS的解析来提高上网的响应速度! | 旧一篇: Blog进入CSDN热点专家列表!

     
    首先告诉大家,拿到了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/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 ~] $

    所以说见鬼:“
    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/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


    这样就可以看到之前在Windows中熟悉的安装向导界面了,直接“下一步,下一步”继续...!

    安装完成后,JBuilder 2006如下:






    发表于 @ 2007年02月09日 00:14:00|评论(loading...)|编辑|收藏

    新一篇: Linux中通过缓存DNS的解析来提高上网的响应速度! | 旧一篇: Blog进入CSDN热点专家列表!

    评论

    #iqueen 发表于2007-02-09 17:26:54  IP: 10.193.48.*
    安装了Linux/Unix的人为什么要安装JBuilder,而且还是昂贵的Enterprise版本。奇怪。
    #xport 发表于2007-02-09 17:43:36  IP: 221.225.11.*
    那要用什么呢?VI, Eclipse 还是 NetBeans呢?

    为什么要安装JBuilder呢?因为我用着舒服、顺手,且开发效率高!
    #phpcool 发表于2007-02-12 10:52:05  IP: 202.100.203.*
    真不错,按作者的方法搞定啦.
    #xport 发表于2007-02-12 11:01:18  IP: 61.177.18.*
    哈哈,看到大家搞定了我也高兴啊~~~!
    #horsefaced 发表于2007-02-13 15:20:54  IP: 59.61.139.*
    呵呵,作者利害啊,偶用eclipse,没这方法的问题的说
    #lunny xiao 发表于2007-03-29 21:10:26  IP: 59.50.132.*
    直接用eclipse就好了。
    #DL88250 发表于2007-07-29 01:22:53  IP: 222.220.231.*
    呵呵,喜欢eclipse :-)
    #网友 发表于2008-02-27 02:19:41  IP: 61.178.11.*
    强人啊
    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © xport