How to get the multi-lib options of a RTEMS installation

Ralf Corsepius ralf.corsepius at rtems.org
Fri Feb 10 08:31:26 UTC 2012


On 02/10/2012 08:47 AM, Sebastian Huber wrote:
> On 02/10/2012 04:05 AM, Ralf Corsepius wrote:
>> On 02/09/2012 05:44 PM, Sebastian Huber wrote:
> [...]
>>> This whould be nice for building libraries which depend only
>>> on POSIX interfaces.
>> I don't understand this question. Are you trying to build an RTEMS with
>> cpukit/posix enabled (or more general, with RTEMS cpukit specific flags
>> enabled) for some multilib variants and disabled for others and are
>> trying to
>> install them into the default directories? In general, this doesn't work.
>
> Lets suppose I have a simple library (libfancy.a) consisting of only one
> source file:
>
> #include "fancy.h"
>
> #include <string.h>
>
> void fancy_memcpy(const void *src, void *dst, size_t n)
> {
> memcpy(dst, src, n);
> }
>
> The header file for this library is:
>
> #include <stddef.h>
>
> void fancy_memcpy(const void *src, void *dst, size_t n);
>
> Clearly this library doesn't depend on certain RTEMS or BSP features.
> Its only dependency is the C library. Now it would be nice to build this
> library with the GCC options corresponding to the libc.a in the
> multi-lib directories. I want one libfancy.a in every directory
> containing a libc.a.

Classical case of multilibing.

You want to iterate over the list of pairs returned by
<target>-gcc -print-multi-lib

c.f. the working principle of config-ml.in GCC or in RTEMS source tree.

Wrt. RTEMS, there is an easier way: Add it to RTEMS cpukit and it will 
be built this way.

Ralf







More information about the users mailing list