This is the mail archive of the newlib@sources.redhat.com mailing list for the newlib project.


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

Re: newlib newbie wants to malloc


Christian Groessler wrote:
> 
> Hi,
> 
> I'm trying to get newlib working on a new system and I've encountered
> a problem.
> 
> There is a function _malloc_r used throughout the library, even malloc
> simply calls _malloc_r.
> 
> This function is provided in the file newlib/libc/stdlib/mallocr.c.
> There is a "#define mALLOc _malloc_r".
> 
> The problem is now that mALLOc() expects one parameter, but _malloc_r
> is defined to get 2 parameters.
> The first parameter to _malloc_r is a pointer which is now interpreted
> by mALLOc as requested size.
> How should this work? What am I doing wrong?
> 
> confused,
> chris

Chris,

  Are you using the Makefile.in given to compile the files?  You will note
there is a -DINTERNAL_NEWLIB flag added to the compilation.  This make
mALLOc define to _malloc_r and also adds the extra parameter which points
to the reentrant structure.

  In addition, please note the comment on the top of libc/include/reent.h
which discusses the various strategies for supporting reentrancy.  You
should likely be specifying -DREENTRANT_SYSCALLS_PROVIDED for your
port.

-- Jeff J.


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