Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Jan 2016 06:34:07 +0000
From:      Tom Vijlbrief <tvijlbrief@gmail.com>
To:        Mark Millard <markmi@dsl-only.net>, freebsd-arm <freebsd-arm@freebsd.org>,  FreeBSD Toolchain <freebsd-toolchain@freebsd.org>
Cc:        mmel@freebsd.org
Subject:   Re: make buildworld failed with error "relocation truncated to fit: R_ARM_JUMP24 against symbol `_fini'"
Message-ID:  <CAOQrpVd5y1OZUyDqykNXezBAfFC-kqr8QzWG9x9Xe%2BjPAB8p=A@mail.gmail.com>
In-Reply-To: <EED734D6-460D-4859-B10E-30FA4759D214@dsl-only.net>
References:  <EED734D6-460D-4859-B10E-30FA4759D214@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On my RPI-B I am currently testing:

cd /usr/src/lib/csu/arm
make clean install

Before the regular buildworld...

Op do 21 jan. 2016 01:17 schreef Mark Millard <markmi@dsl-only.net>:

>
> Wed Jan 20 10:29:06 UTC 2016 Michal Meloun wrote:
>
> > Dne 20.01.2016 v 8:00 Tom Vijlbrief napsal(a):
> > . . .
> > >
> > > The buildworld on the RPI failed:
> > >
> > > http://www.v7f.eu/public/freebsd/world371.log
> > >
> > > The same tree build ok when cross compiling. I can supply the log if
> needed.
> > >
> > > My previous succesfull build on the RPI was jan 14, just before the
> > > introduction of the long-call flag for clang but after the long-call
> change
> > > for crt1.o on jan 10th.
> > >
> > > Could this partial introduction of the long-call flag in the installed
> > > world be the cause of the issue? I would expect a buildworld to use
> only
> > > libs from /usr/obj but the failing link refers to /usr/lib.
> > >
> > > I will try installing the new cross compiled world to see if that
> fixes the
> > > native build.
> > >
> > >>
> > > _______________________________________________
> > > freebsd-arm at freebsd.org mailing list
> > > https://lists.freebsd.org/mailman/listinfo/freebsd-arm
> > > To unsubscribe, send any mail to "freebsd-arm-unsubscribe at
> freebsd.org"
> > >
> >
> > Confirmed. Native build of fresh current fails on bootstrap clang link
> > phase.
> >
> > The bootstrap clang is now build with -mlong-calls and is significantly
> > longer that previous one (without -mlong-calls). Also, bootstrap clang
> > is linked with original "/usr/lib/crti.o" (which is compiled without
> > -mlong-calls), so link fails.
> >
> > This is also reason, why the problem is not seen with crossbuild  -
> > bootstrap clang is builded for host architecture and final (target)
> > clang is linked with right (new, compiled with -mlong-calls) crti.o.
> >
> > Michal
>
>
> For on-arm buildworld with clang/clang++ (self hosted) . . .
> (Warning that I've not tried the below.)
>
> It appears that one can back out the -mlong-calls additions and get back
> to something that builds and installs without needing any cross builds from
> a different type of host.
>
> Going the other way: If one already has clang/clang++ 3.7.1 one does not
> need WITH_CLANG_BOOTSTRAP= involved as the existing system clang/clang++
> can already do the compiles.
>
> So try an explicit WITHOUT_CLANG_BOOTSTRAP= to avoiding having a version
> built that ends up linked with /usr/lib/crti.o (that is not based on
> -mlong-calls yet) but mixed that with having the -mlong-calls in place for
> the non-bootstrap clang build to use.
>
> The above might be a workaround sufficient for bootstrapping into a
> -mlong-calls based environment when the arm itself is to build clang and/or
> lldb.
>
>
> ===
> Mark Millard
> markmi at dsl-only.net
>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOQrpVd5y1OZUyDqykNXezBAfFC-kqr8QzWG9x9Xe%2BjPAB8p=A>