make buildworld failed with error "relocation truncated to fit: R_ARM_JUMP24 against symbol `_fini'"

Mark Millard markmi at dsl-only.net
Mon Jan 18 18:05:19 UTC 2016


Hmm. Clearly I can not count: I listed 6 files for arm and one for mips use. Please check all 6 that are for arm.

===
Mark Millard
markmi at dsl-only.net

On 2016-Jan-18, at 10:01 AM, Mark Millard <markmi at dsl-only.net> wrote:


On 2016-Jan-18, at 9:48 AM, Hamza Sheikh <fehrist at codeghar.com> wrote:
> 
> Thank you for the detailed reply.
> 
> > An explanation of why you hit a problem anyway might be that you have an odd mix of paths in your note. For example:
> >
> >> /usr/local/raspbsd/src/common/lib/csu/arm/crt1.c
> >
> > is apparently not inside the tree starting at
> >
> >> /usr/src
> >
> > But your "steps" show /usr/src use:
> >
> >> # svnlite checkout svn://svn.freebsd.org/base/head /usr/src
> >> . . .
> >> # cd /usr/src
> >> # svnlite update
> >> . . .
> >> # svnlite info
> >> Path: .
> >> Working Copy Root Path: /usr/src
> >> . . .
> >> # make buildworld
> >
> >
> > May be something not shown from your /etc/src.conf or some place else redirected things? May be you are picking up some old files from a prior build?
> >
> 
> $ cat /etc/src.conf
> KERNCONF=RPI2
> WITHOUT_DEBUG_FILES=YES
> 
> 
> > Notes about where -mlong-calls are used. . .
> 
> Thank you for the details.
> 
> > They all are in -r294031 on base/head . (One of the 5 arm specific ones has been there a little longer: -r293648 .)
> 
> > While clang 3.8.0 builds normally have this large-distance issue, as far as I know normal clang 3.7.1 builds do not normally have large enough distances to create the issue. But the paths in your notes suggest something is not normal about your context.
> 
> Toby[1] hit the same error as me. It appears that he may not be using the same install image as me as his error snippet shows /usr/src/lib/csu/arm/crt1.c instead of /usr/local/raspbsd/src/common/lib/csu/arm/crt1.c.
> 
> > Separately: I agree with Andreas Schwarz's note that doing builds and installs while having a tiny /tmp is likely not going to work: /tmp will likely run out of space even though elsewhere has lots of space available.
> 
> I changed to using tmpfs for /tmp and hit the same error.
> 
> $ cat /etc/fstab
> /dev/mmcsd0s1   /boot/msdos     msdosfs rw,noatime      0 0
> /dev/mmcsd0s2a  /               ufs rw,noatime          1 1
> #md             /tmp            mfs rw,noatime,-s50m    0 0
> md              /var/log        mfs rw,noatime,-s15m    0 0
> md             /var/tmp        mfs rw,noatime,-s10m    0 0
> tmpfs           /tmp            tmpfs rw,mode=777 0 0
> 
> 
> 
> $ cat /etc/rc.conf
> hostname="rpi2"
> ifconfig_ue0="DHCP"
> sshd_enable="YES"
> 
> powerd_enable="YES"
> 
> # Nice if you have a network, else annoying.
> ntpd_enable="YES"
> ntpd_sync_on_start="YES"
> 
> # Uncomment to disable common services (more memory)
> #cron_enable="NO"
> #syslogd_enable="NO"
> sendmail_enable="NONE"
> sendmail_submit_enable="NO"
> sendmail_outbound_enable="NO"
> sendmail_msp_queue_enable="NO"
> # On first boot, enlarge the root filesystem to fill the SD card
> growfs_enable="YES"
> 
> ipv6_activate_all_interfaces="YES"
> ifconfig_ue0_ipv6="inet6 accept_rtadv"
> rtsold_enable="YES"
> 
> tmpmfs="AUTO"
> 
> 
> [1] https://lists.freebsd.org/pipermail/freebsd-arm/2016-January/013052.html
> 
> -- 
> Hamza Sheikh
> Twitter: @aikchar

I listed 5 files and their -mlong-calls related content for arm (plus one file that has -mlong-calls for mips use). Please check all 5 files for arm for as they were when you built/build and report on what you find. The files are:

> STATIC_CXXFLAGS+= -mlong-calls
> /usr/src/lib/libc++/Makefile

> STATIC_CFLAGS+= -mlong-calls
> /usr/src/lib/csu/arm/Makefile

> CFLAGS+=        -mlong-calls
> /usr/src/usr.bin/clang/lldb/Makefile

> CFLAGS+= -mlong-calls
> /usr/src/usr.bin/clang/clang/Makefile


> STATIC_CXXFLAGS+= -mlong-calls
> /usr/src/lib/clang/clang.lib.mk

>        ${CC} ${STATIC_CFLAGS} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
>        ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
>        ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
>        ${CXX} ${PO_FLAG} ${STATIC_CXXFLAGS} ${PO_CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
> /usr/src/share/mk/bsd.lib.mk


===
Mark Millard
markmi at dsl-only.net




More information about the freebsd-arm mailing list