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

Re: Backward Compatibility of RHEL Advanced Server and GCC

Generally speaking, from my porting experienience, glibc and other libraries create compatibility problems, although this varies from application to application. I would definitely expect some problems, but there are ways to manage them:

1)Do an ldd of the binary(ies) of your application on the RHEL 3 system and map out the library dependencies:

[root cn1 myapp]# ldd myapp
        libdl.so.2 => /lib64/libdl.so.2 (0x000000351f200000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x0000003522e00000)
        libz.so.1 => /usr/lib64/libz.so.1 (0x000000351fa00000)
        libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x000000352e400000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x000000351f600000)
        libm.so.6 => /lib64/libm.so.6 (0x000000351ee00000)
        libc.so.6 => /lib64/libc.so.6 (0x000000351ea00000)
        /lib64/ld-linux-x86-64.so.2 (0x000000351e600000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000352cc00000)

This step will help you locate the exact library dependencies your binary has.

2)Examine the version of the respective libaries in RHEL 5.

3)Attempt to compile the binary and see what happens. Most new libraries are designed to be backwards compatible to the older version of the libraries, but certain lib version checks on the configure and make scripts might stop the compilation process. You might have to tweak them and see whether it compiles properly.

4)If all else fails, you can always install the RHEL xen kernel and host a guest RHEL 3 OS there? Have you examined that possibility? You could then run the hypervisor (and other apps) on the latest RHEL version and maintain full compatibility with the binary requirements.

If I were you, I would do either 4, or ask the software vendor to supply a new version for RHEL 4/5, if possible.


George Magklaras

Senior Computer Systems Engineer/UNIX Systems Administrator
EMBnet Technical Management Board
The Biotechnology Centre of Oslo,
University of Oslo

S. Suhasini wrote:

We have an older setup of our software with the following details:
- OS release - RHEL AS release 3

- Gcc - 2.96

- Kernel - 2.4.21-4.EL

- Glibc - 2.3.2-95.3

- Binutils -

- Selinux - not present

And we would like to replace the existing setup with new version of our
software which was developed on the following environment

- OS release - RHEL server release 5

- Gcc - 4.1.1
- Kernel - 2.6.18-8.el5

- Glibc - 2.5-12

- Binutils -

- Selinux - disabled

- Using Log4cxx version 0.10.0

We would like to know whether the new version of the software (compiled with
the new GCC) can be deployed and run on the older setup with RHEL AS 3 and
GCC 2.96. We need not compile again on the older setup. Will there be any
run-time libraries dependency? Would be very grateful if we get a response
for this query.



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