This is the mail archive of the libc-help@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Adding a new function to memcpy.c


Ryan,

Thanks. That worked. What is this file string/Versions? Can you tell me more about these files?

Rodrigo

From: "Ryan Arnold" <ryan.arnold@gmail.com>
To: "Rodrigo Dominguez" <roddomi@hotmail.com>
CC: libc-help@sourceware.org
Subject: Re: Adding a new function to memcpy.c
Date: Thu, 7 Aug 2008 15:05:12 -0500

On Thu, Aug 7, 2008 at 2:40 PM, Rodrigo Dominguez <roddomi@hotmail.com> wrote:
> Hi,
>
> I am trying to create a new library function which I want to call memcpy_TC.
> I want memcpy_TC to be an exact clone of memcpy. I made the corresponding
> modifications to string/memcpy.c, string/string.h and include/string.h to
> include my new function. I also removed sysdeps/.../memcpy.S. However, after
> I build, memcpy_TC is defined as a local symbol in libc.so:
>
> $nm ../glibc-obj/libc.so | grep memcpy
> 0006ebc0 t __GI_memcpy
> 0006ec10 t __GI_memcpy_TC
> 0006ebc0 T memcpy
> 0006ec10 t memcpy_TC
>
> I tracked back the build process and I found that libc.so is built from
> libc_pic.os. What I find very strange is that memcpy_TC is defined as a
> global symbol in libc_pic.os. How can it change from global to local during
> the linking of libc.so? Am I missing something here?


You need to export it in the string/Versions file.

Ryan



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]