In the hope that some skilled developers are here:
We have a commercial product that do not run under CentOS6
/lib64/libc.so.6: version `GLIBC_2.14' not found
Is it possible to compile software (compile switch?) on a system that uses a newer glibc but in such a way that can be used (executed) on a system with an older glibc (like here: compiled on glibc 2.14 based system but C6 is on 2.12)?
-- Thanks LF
On 08/25/2015 09:02 AM, Leon Fauster wrote:
In the hope that some skilled developers are here:
We have a commercial product that do not run under CentOS6
/lib64/libc.so.6: version `GLIBC_2.14' not found
Is it possible to compile software (compile switch?) on a system that uses a newer glibc but in such a way that can be used (executed) on a system with an older glibc (like here: compiled on glibc 2.14 based system but C6 is on 2.12)?
it sounds to me that you're on a path to madness. if you have a commercial product, you should have support for that product and follow their guidance on what the underlying OS is/should be/can be modified to make your system run. trying to cobble together support for a closed source application from twisting and bending open source things into shapes they weren't meant to hold is just going to set you up for a spectacular failure when the wrong OS things get updated, a vendor patch comes out, or some other very difficult to trace problem arrives.
How about virtualization and running on supported platform?
Eero 25.8.2015 4.03 ip. "Leon Fauster" leonfauster@googlemail.com kirjoitti:
In the hope that some skilled developers are here:
We have a commercial product that do not run under CentOS6
/lib64/libc.so.6: version `GLIBC_2.14' not found
Is it possible to compile software (compile switch?) on a system that uses a newer glibc but in such a way that can be used (executed) on a system with an older glibc (like here: compiled on glibc 2.14 based system but C6 is on 2.12)?
-- Thanks LF
CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
Am 25.08.2015 um 16:31 schrieb Eero Volotinen eero.volotinen@iki.fi:
25.8.2015 4.03 ip. "Leon Fauster" leonfauster@googlemail.com kirjoitti:
In the hope that some skilled developers are here:
We have a commercial product that do not run under CentOS6
/lib64/libc.so.6: version `GLIBC_2.14' not found
Is it possible to compile software (compile switch?) on a system that uses a newer glibc but in such a way that can be used (executed) on a system with an older glibc (like here: compiled on glibc 2.14 based system but C6 is on 2.12)?
How about virtualization and running on supported platform?
The support of this vendor (2) is willing to provide such OS support for there products.
The same was also offered by a different vendor (1), they just recompiled there software and gave us the opportunity to test it under C6. Before that it only was running under Ubuntu. I just was curious about such solution to give the second vendor a hint (the symptoms are the same).
-- LF
On 08/25/2015 07:11 PM, Leon Fauster wrote:
Am 25.08.2015 um 16:31 schrieb Eero Volotinen eero.volotinen@iki.fi:
25.8.2015 4.03 ip. "Leon Fauster" leonfauster@googlemail.com kirjoitti:
In the hope that some skilled developers are here:
We have a commercial product that do not run under CentOS6
/lib64/libc.so.6: version `GLIBC_2.14' not found
Is it possible to compile software (compile switch?) on a system that uses a newer glibc but in such a way that can be used (executed) on a system with an older glibc (like here: compiled on glibc 2.14 based system but C6 is on 2.12)?
How about virtualization and running on supported platform?
The support of this vendor (2) is willing to provide such OS support for there products.
The same was also offered by a different vendor (1), they just recompiled there software and gave us the opportunity to test it under C6. Before that it only was running under Ubuntu. I just was curious about such solution to give the second vendor a hint (the symptoms are the same).
So the easiest solution would be that the vendor (2) build the software on a C6 system. Most likely it will compile fine, and the produced binary will run on C6 as well as more recent distributions.
Am 25.08.2015 um 19:17 schrieb Nicolas Thierry-Mieg Nicolas.Thierry-Mieg@imag.fr:
On 08/25/2015 07:11 PM, Leon Fauster wrote:
The support of this vendor (2) is willing to provide such OS support for there products.
The same was also offered by a different vendor (1), they just recompiled there software and gave us the opportunity to test it under C6. Before that it only was running under Ubuntu. I just was curious about such solution to give the second vendor a hint (the symptoms are the same).
So the easiest solution would be that the vendor (2) build the software on a C6 system. Most likely it will compile fine, and the produced binary will run on C6 as well as more recent distributions.
sure, thats always possible but exist there some backward compatibility switch when compiling against a newer glibc?
-- LF
On 08/25/2015 05:48 PM, Leon Fauster wrote:
Am 25.08.2015 um 19:17 schrieb Nicolas Thierry-Mieg Nicolas.Thierry-Mieg@imag.fr:
On 08/25/2015 07:11 PM, Leon Fauster wrote:
The support of this vendor (2) is willing to provide such OS support for there products.
The same was also offered by a different vendor (1), they just recompiled there software and gave us the opportunity to test it under C6. Before that it only was running under Ubuntu. I just was curious about such solution to give the second vendor a hint (the symptoms are the same).
So the easiest solution would be that the vendor (2) build the software on a C6 system. Most likely it will compile fine, and the produced binary will run on C6 as well as more recent distributions.
sure, thats always possible but exist there some backward compatibility switch when compiling against a newer glibc?
No, not really. When you compile a program it LINKS against the standard c or c++ library. You have to run it on a c library that has all the features / functions .. that is WHY it puts the version in.
If you want it to work on CentOS, it needs to be compiled on CentOS .. pretty simple.
There does EXIST a compat-glibc (or compat-gcc) to run OLDER stuff (ie things for CentOS-6) on a newer distro (ie CentOS-7). But those side load an older version of the libraries for use on the new system.
Technically, if they used the older version of glibc/gcc (and any other required library links) on ubuntu, you can make things work, but it would be easier to compile the software on the platform where it is intended to work.
Am 26.08.2015 um 01:04 schrieb Johnny Hughes johnny@centos.org:
On 08/25/2015 05:48 PM, Leon Fauster wrote:
Am 25.08.2015 um 19:17 schrieb Nicolas Thierry-Mieg Nicolas.Thierry-Mieg@imag.fr:
On 08/25/2015 07:11 PM, Leon Fauster wrote:
So the easiest solution would be that the vendor (2) build the software on a C6 system. Most likely it will compile fine, and the produced binary will run on C6 as well as more recent distributions.
sure, thats always possible but exist there some backward compatibility switch when compiling against a newer glibc?
No, not really. When you compile a program it LINKS against the standard c or c++ library. You have to run it on a c library that has all the features / functions .. that is WHY it puts the version in.
If you want it to work on CentOS, it needs to be compiled on CentOS .. pretty simple.
There does EXIST a compat-glibc (or compat-gcc) to run OLDER stuff (ie things for CentOS-6) on a newer distro (ie CentOS-7). But those side load an older version of the libraries for use on the new system.
Technically, if they used the older version of glibc/gcc (and any other required library links) on ubuntu, you can make things work, but it would be easier to compile the software on the platform where it is intended to work.
yep, thats the so called backward compatibility
https://www.kernel.org/pub/software/libs/glibc/hjl/compat/
okay, thanks for the input. I will try to convince the vendor.
-- LF
On 8/25/2015 3:48 PM, Leon Fauster wrote:
sure, thats always possible but exist there some backward compatibility switch when compiling against a newer glibc?
binary compatibility has /never/ been a goal of the linux/gpl architects/authors. in fact, it seems like they make design decisions to discourage it.
Red Hat, OTOH, goes to great lengths to try and implement it within a major release, but they are fighting upstream to do so.
On 08/25/2015 04:22 PM, John R Pierce wrote:
binary compatibility has /never/ been a goal of the linux/gpl architects/authors. in fact, it seems like they make design decisions to discourage it.
I don't think that's true. Development in GNU/Linux is highly de-centralized, and some projects are better at stability than others. Linux has maintained an extremely stable interface for user-space applications. glibc uses versioned symbols for backward compatibility. The original question was about forward-compatibility, which is a much harder problem.
Not all developers do as good a job with backward compatibility, but that problem is considerably more pronounced in the high level languages, where versioned libraries just aren't a thing. And that's why you see docker and other containers gaining traction, so that applications can be run in an environment with specific library versions.