Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Apr 2013 23:00:15 -0400 (EDT)
From:      Julio Merino <julio+host-g5-jmmv@meroh.net>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   powerpc/178038: clang++ fails to produce a binary in powerpc64
Message-ID:  <201304220300.r3M30F2g034973@g5.meroh.net>
Resent-Message-ID: <201304220310.r3M3A0ld095342@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         178038
>Category:       powerpc
>Synopsis:       clang++ fails to produce a binary in powerpc64
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ppc
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Apr 22 03:10:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Julio Merino
>Release:        FreeBSD 9.1-STABLE powerpc
>Organization:
>Environment:
System: FreeBSD g5.meroh.net 9.1-STABLE FreeBSD 9.1-STABLE #2 r249701M: Sat Apr 20 13:44:59 EDT 2013 root@g5.meroh.net:/usr/obj/usr/src/sys/GENERIC64 powerpc


	
>Description:
	In my attempt to build Kyua on FreeBSD 9.1 powerpc64 with clang++,
        I have encountered a problem that smells like a compiler or toolchain
        issue.  I don't know if this is a clang issue, or a clang issue only
        on powerpc64, but I don't have access to any other FreeBSD system to
        compare the results to.  FWIW, building Kyua with GCC on this very
        same installation works just fine.

        I'm using Kyua sources from the upstream git repository, which can be
        found on http://code.google.com/p/kyua .  My FreeBSD 9.1 installation
        is built from sources from yesterday (20130420).

        The error I've got from the build is as follows, which I've tweaked
        to use ld's -v flag for further details.

        This problem if fully reproducible now, so please, if you need any
        further details or intermediate files to debug this issue further, do
        not hesitate to ask!

=====
make  all-am
clang++ -v -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include  -I/usr/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include  -I/usr/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include  -I/usr/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include  -I/usr/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include  -I/usr/local/include -I/usr/local/i
 nclude/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include  -I/usr/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include -I/usr/local/include/lua51 -I/home/jmmv/os/local/include  -I/usr/local/include -O2  -D_FORTIFY_SOURCE=2 -Wall -Wcast-qual -Wextra -Wpointer-arith -Wredundant-decls -Wreturn-type -Wshadow -Wsign-compare -Wswitch -Wwrite-strings -Werror -Wabi -Wctor-dtor-privacy -Wno-deprecated -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo -Wsynth   -Wl,-R/home/jmmv/os/local/lib -o kyua kyua-main.o libcli.a libengine.a libstore.a libengine.a libutils.a -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok  -L/usr/local/lib -lsqlite3 libutils.a -
 L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -l!
 lutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok  -L/usr/local/lib -lsqlite3 libstore.a libengine.a libutils.a -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok  -L/usr/local/lib -lsqlite3 libutils.a -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok  -L/usr/local/lib -lsqlite3 libengine.a libstore.a libengine.a libutils.a -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok  -L/usr/local/lib -lsqlite3 libutils.a -L/usr/local/lib/lua51 -llua -lm
  -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok  -L/usr/local/lib -lsqlite3 libutils.a -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok -L/usr/local/lib/lua51 -llua -lm -L/home/jmmv/os/local/lib -llutok  -L/usr/local/lib -lsqlite3 
FreeBSD clang version 3.2 (tags/RELEASE_32/final 170710) 20121221
Target: powerpc64-unknown-freebsd9.1
Thread model: posix
 "/usr/bin/ld" --eh-frame-hdr -dynamic-linker /libexec/ld-elf.so.1 --enable-new-dtags -o kyua /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib -L/usr/local/lib/lua51 -
 L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib/lua51 -L/home/jmmv/os/local/lib -L/usr/local/lib -L/usr/lib -R/home/jmmv/os/local/lib kyua-main.o libcli.a libengine.a libstore.a libengine.a libutils.a -llua -lm -llutok -llua -lm -llutok -llua -lm -llutok -lsqlite3 libutils.a -llua -lm -llutok -llua -lm -llutok -llua -lm -llutok -lsqlite3 libstore.a libengine.a libutils.a -llua -lm -llutok -llua -lm -llutok -llua -lm -llutok -lsqlite3 libutils.a -llua -lm -llutok -llua -lm -llutok -llua -lm -llutok -lsqlite3 libengine.a libstore.a libengine.a libutils.a -llua -lm -llutok -llua -lm -llutok -llua -lm -llutok -lsqlite3 libutils.a -llua -lm -llutok -llua -lm -llutok -llua -lm -llutok -lsqlite3 libutils.a -llua -lm -llutok -llua -lm -llutok -llua -lm -llutok -lsqlite3 -lstdc++ 
 -lm -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-!
 needed -lgcc_s --no-as-needed /usr/lib/crtend.o /usr/lib/crtn.o
/usr/bin/ld: kyua: section `.got' can't be allocated in segment 3
/usr/bin/ld: final link failed: Bad value
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
*** [kyua] Error code 1

Stop in /home/jmmv/os/kyua/src.
*** [all] Error code 1

Stop in /home/jmmv/os/kyua/src.
=====
>How-To-Repeat:
        Supposedly:

	1) Fetch Kyua git sources from upstream.
        2) Set CC=clang CXX=clang++ CPP=clang-cpp .
        3) Configure and attempt to build the package.  You'll get the error
           above at the very end of the process, during linking.
>Fix:

	
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201304220300.r3M30F2g034973>