I am new to gcc and linux.
I have build an programm with ubuntu 7.10. There it is running fine.
but it is supposed to run on an debian machine. when starting the
application there i get the following error message:
# ./server.sh
.
./AdyosServer_eclipse: /lib/tls/libc.so.6: version `GLIBC_2.4' not found
(required by ./Server)
./AdyosServer_eclipse: /lib/tls/libc.so.6: version `GLIBC_2.4' not found
(required by ./libccgnu2-1.6.so.0)
the debian machine uses glibc 2.32
Do the glibc version have to be identicaly?
I have read that upgrading/downgrading glibc is a heavy task. So this seems
not to be the solution to me.
Is there a compiler switch to toggle a specific glibc version or to make the
binary glibc conform.
Do you know another solution to the problem?
Probably this is not exactly the right place here. Do you know a good
newsgroup/forum for this topic?
- gcc and linux cross plattform compiling
--
regards,
Gerd
> I have build an programm with ubuntu 7.10. There it is running fine.
>
> but it is supposed to run on an debian machine. when starting the
> application there i get the following error message:
>
> # ./server.sh
> .
> ./AdyosServer_eclipse: /lib/tls/libc.so.6: version `GLIBC_2.4' not found
> (required by ./Server)
> ./AdyosServer_eclipse: /lib/tls/libc.so.6: version `GLIBC_2.4' not found
> (required by ./libccgnu2-1.6.so.0)
>
> the debian machine uses glibc 2.32
No, it doesn't. It probably uses glibc 2.3.2.
> Do the glibc version have to be identicaly?
No. UNIX machines in general support backwards compatibility,
but not "forward" compatibility. That means, that you can expect a
binary compiled on an older machine to continue working fine on a
newer one (newer glibc continues to support "backward" binaries),
but you can *not* expect a binary built on newer machine to work
on an older one (the older glibc has no clue how to support features
which haven't been invented yet).
> I have read that upgrading/downgrading glibc is a heavy task.
It's not necessarily "heavy" if you use precompiled packages,
but building your own requires extreme care -- you can easily make
your system un-bootable if you make a single mistake.
> Is there a compiler switch to toggle a specific glibc version or to make the
> binary glibc conform.
No.
> Do you know another solution to the problem?
There are three general solutions (listed in order of increasing difficulty):
1. Build on the oldest release of glibc you plan to support (we
build on ancient RedHat 6.2 with glibc-2.1, and it runs *everywhere*).
2. Use Autopackage (http://autopackage.org/apbuild-apgcc.php)
3. Use x86-glibc-2.4 -> x86-glibc-2.3.2 cross-gcc (see http://www.kegel.com/crosstool).
Cheers,
--
In order to understand recursion you must first understand recursion.
Remove /-nsp/ for email.