tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] Error: File crti.o/crt1.o Not Found and No Function R


From: Cayce Pollard
Subject: Re: [Tinycc-devel] Error: File crti.o/crt1.o Not Found and No Function Renaming
Date: Thu, 19 Sep 2013 17:39:58 -0500




On Thu, Sep 19, 2013 at 12:12 PM, Thomas Preud'homme <address@hidden> wrote:
Le mardi 17 septembre 2013 12:22:03 Cayce Pollard a écrit :
> Read
>
> On Tue, Sep 17, 2013 at 9:13 AM, Cayce Pollard
<address@hidden>wrote:
> > On Sep 17, 2013 8:33 AM, "Daniel Glöckner" <address@hidden> wrote:
> > > On Tue, Sep 17, 2013 at 07:07:38AM -0500, Cayce Pollard wrote:
> > > > tcc: error: file '/project/arm-cc/sysroot/lib//libgcc_s.so.1' not
> > > > found
> > > > tcc: error: undefined symbol '__divsi3'

*snip* 
> > >
> > > Android links statically against GCC's libgcc.a. See
> >
> > https://android.googlesource.com/platform/bionic.git/+/master/libc/arch-ar
> > m/bionic/libgcc_compat.c
> >
> >
> > Is it possible to link statically against libgcc.a and dynamically against
> > Bionic libc? Libfakechroot only allows dynamic linking to libc...

Yes, see below.

>
> EDIT:  After reading more at the link above...and in the android
> toolchain's linker options, I'm not sure if the above is possible.  I'm 95%
> sure I need dynamic linking to libc because I'm running the generated
> binary in KBOX with libfakechroot, so I need the -Bdynamic option.

You can put both -Bdynamic and -Bstatic in a command line. According to ld's
manual, these options affects library searching with -l options which follows
it. Which means if you do -Bdynamic -lfoo -lbar -Bstatic -lbaz libfoo and
libbar will be dynamically linked and libbaz will be statically linked.

Done.  Have configured and built and will test on device. 

>
> I can include -L/foo/bar/path/to/libgcc.a -lgcc, but I'm guessing  it won't
> work with -Bdynamic.  I've run configure with those options && make -d
> anyway just to see what happens.

-L takes as a parameter a directory containing libraries. You should either
specify libgcc.a as an input file (as you would for a .o, .s or .c file) or use
-Bstatic (or variants of this option) to load libgcc as static.

Best regards,

Thomas


reply via email to

[Prev in Thread] Current Thread [Next in Thread]