[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Testing for Kylix compatibility fails (potato)



Borland's pre-install script for Kylix tests for a libc bug that it
claims exists in Potato.  I've included the output of its test script
below.

Does anyone know of a workaround/bugfix?  I searched but didn't find
anything about this.  Presumably it's fixed on Woody/Sid, but I didn't
test it there.

Thanks,

--
Pete Harlan
harlan@artselect.com



> Borland Kylix System Compatibility Test
> 
> Checking loader....This will test whether libc installed on your system has
> a design flaw of the dynamic loading of
> shared objects.  By dynamicly loading shared object 'a' that depends
> on shared objects 'b' and 'c', then dynamically loading shared object 'b'
> which depends on 'c', shared object 'c' will remain in memory when 'a' 
> and 'b' are closed.
> 
> This is what is in memory now:
>    Name                                     Address     Handle
>  -------------------------------------------------------------------
>                                            0x00000000  0x400136f0
>  /lib/libdl.so.2                           0x40019000  0x40013c60
>  /lib/libc.so.6                            0x4001e000  0x4001d000
>  /lib/ld-linux.so.2                        0x40000000  0x40013420
> Loading shared object lib-a.so
> And this is what is now in memory
>    Name                                     Address     Handle
>  -------------------------------------------------------------------
>                                            0x00000000  0x400136f0
>  /lib/libdl.so.2                           0x40019000  0x40013c60
>  /lib/libc.so.6                            0x4001e000  0x4001d000
>  /lib/ld-linux.so.2                        0x40000000  0x40013420
>  /var/home/erik/tmp/borpretest/lib-a.so    0x40015000  0x0804af80
>  /var/home/erik/tmp/borpretest/lib-b.so    0x40017000  0x0804b228
>  /var/home/erik/tmp/borpretest/lib-c.so    0x400fb000  0x0804b4d0
> Getting address of 'a_function' and calling it
> Now loading shared object lib-b.so
> Again, this is what is in memory
>    Name                                     Address     Handle
>  -------------------------------------------------------------------
>                                            0x00000000  0x400136f0
>  /lib/libdl.so.2                           0x40019000  0x40013c60
>  /lib/libc.so.6                            0x4001e000  0x4001d000
>  /lib/ld-linux.so.2                        0x40000000  0x40013420
>  /var/home/erik/tmp/borpretest/lib-a.so    0x40015000  0x0804af80
>  /var/home/erik/tmp/borpretest/lib-b.so    0x40017000  0x0804b228
>  /var/home/erik/tmp/borpretest/lib-c.so    0x400fb000  0x0804b4d0
> Getting address of 'b_function' and calling it
> Now this is where things begin to break down.  The lib-b.so handle
> will be closed first, then the lib-a.so handle will be closed.  Expected
> behaviour should be that the objects in memory return to the state prior
> loading lib-a.so
> Closing b_handle
>    Name                                     Address     Handle
>  -------------------------------------------------------------------
>                                            0x00000000  0x400136f0
>  /lib/libdl.so.2                           0x40019000  0x40013c60
>  /lib/libc.so.6                            0x4001e000  0x4001d000
>  /lib/ld-linux.so.2                        0x40000000  0x40013420
>  /var/home/erik/tmp/borpretest/lib-a.so    0x40015000  0x0804af80
>  /var/home/erik/tmp/borpretest/lib-b.so    0x40017000  0x0804b228
>  /var/home/erik/tmp/borpretest/lib-c.so    0x400fb000  0x0804b4d0
> So far so good
> Closing a_handle
>    Name                                     Address     Handle
>  -------------------------------------------------------------------
>                                            0x00000000  0x400136f0
>  /lib/libdl.so.2                           0x40019000  0x40013c60
>  /lib/libc.so.6                            0x4001e000  0x4001d000
>  /lib/ld-linux.so.2                        0x40000000  0x40013420
>  /var/home/erik/tmp/borpretest/lib-c.so    0x400fb000  0x0804b4d0
> WHOOPS!!!  Lookie there!  lib-c.so is still hanging around! This is bad...
> Thanks for your time
> FAILED
> Checking kernel >= 2.2....OK
> Checking libc >= 2.1.2....Major version is 2
> Minor version is 1
> Revision version is 3
> OK
> Checking libjpeg >= 6.2.0....Checking /usr/lib/libjpeg.so.62
> /usr/lib/libjpeg.so.62 resolves to libjpeg.so.62.0.0
> Checking /usr/lib/libjpeg.so.62.0.0
> Major version is 62
> Minor version is 0
> Revision version is 0
> OK
> 
> This system is not compatible with Borland Kylix. Please see the
> documents in this directory for information on how to upgrade your
> system.
> 



Reply to: