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: Thomas Preud'homme
Subject: Re: [Tinycc-devel] Error: File crti.o/crt1.o Not Found and No Function Renaming
Date: Thu, 19 Sep 2013 19:12 +0200
User-agent: KMail/4.10.5 (Linux/3.10-1-amd64; KDE/4.10.5; x86_64; ; )

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'
> > > > tcc: error: undefined symbol '__modsi3'
> > > > tcc: error: undefined symbol '__aeabi_uidiv'
> > > > tcc: error: undefined symbol '__aeabi_uidivmod'
> > > > tcc: error: undefined symbol '__aeabi_idiv'
> > > > tcc: error: undefined symbol '__aeabi_idivmod'
> > > 
> > > 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.

> 
> 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

Attachment: signature.asc
Description: This is a digitally signed message part.


reply via email to

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