Building for older systems
Michael Eager
eager@eagerm.com
Tue Dec 1 15:03:00 GMT 2015
On 11/29/2015 05:05 PM, Ángel González wrote:
> On 29/11/15 15:20, Michael Eager wrote:
>> I'm trying to build packages (gcc, etc.) on a newer
>> version of Linux which can run on an older Linux system
>> with an older glibc. I've run into the memcpy versioning
>> problem._2.14
>> (...)
>> Any solutions to building for an older glibc?
>>
>
> If you just want to work around the memcpy 2.14 version bump, you can:
> a) #define memcpy memmove
That is more or less equivalent to including a .symver for memcpy.
The problem is that this needs to be included in each of many thousands
of source files.
> b) Use a memcpy wrapper that explicitely uses the old symbol, as
> described in http://stackoverflow.com/a/8862631
>
> This does work, I find strange your claim that “requirements for
> memcpy@GLIBC_2.14 are inherited from libc.so”.
I haven't investigated where this is happening, but I am linking
object files which do not have dependencies on memcpy@GLIBC_2.14
and the resulting executable does. Possibly there is a dependency
in crti.o or crtn.o.
--
Michael Eager eager@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306 650-325-8077
More information about the Libc-help
mailing list