[CentOS] Building for older versions

Mon Nov 23 16:06:28 UTC 2015
Nicolas Thierry-Mieg <Nicolas.Thierry-Mieg at imag.fr>

On 11/23/2015 04:33 PM, Michael Eager wrote:
> Hi --
> I'm trying to build an application on CentOS 7 which
> can run on older versions of CentOS.  I'm running into
> problems with versioning of memcpy in Glibc.  Executables
> built on CentOS 7 require memcpy from glibc-2.14, which
> causes the program not to load on systems with older
> versions of glibc.
> My online search suggests to add an asm() with a .symver
> option to select memcpy from glibc-2.2.5 in each of the
> source files which reference memcpy().  This isn't practical
> with a program with tens of thousands of source files.
> Does anyone have a reasonable solution?

IMO you should really be building your app on an older Centos version (5 
or 6). Then your binary should run everywhere, though it may sometimes 
require installing a -compat package.

An alternative is to link everything statically. Not as good a solution, 
as it introduces security concerns.