ports/153008: clang/binutils incompatibility
Matthias Andree
mandree at FreeBSD.org
Fri Dec 10 22:20:09 UTC 2010
>Number: 153008
>Category: ports
>Synopsis: clang/binutils incompatibility
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Dec 10 22:20:07 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator: Matthias Andree
>Release: FreeBSD 8.2-PRERELEASE amd64
>Organization:
>Environment:
System: FreeBSD apollo.emma.line.org 8.2-PRERELEASE FreeBSD 8.2-PRERELEASE #43: Fri Dec 10 16:02:18 CET 2010 toor at apollo.emma.line.org:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
When compiling stuff with clang, and binutils-2.20 is installed,
ld may fail to create a eh_frame_hdr table (see last line in script below). The
system ld 2.15 does not complain. Uninstalling binutils helps against getting
the error message, but since it's a dependency for gcc44/45/46 that I need for
other purposes, this isn't so easy.
Overriding PATH=/usr/bin:$PATH doesn't help.
$ clang -v -O2 -ggdb3 -Wall -Wextra -pedantic -I/usr/kerberos/include -L/usr/lib -o fetchmail socket.o getpass.o fetchmail.o env.o idle.o options.o daemon.o driver.o transact.o sink.o smtp.o idlist.o uid.o mxget.o md5ify.o cram.o gssapi.o opie.o interface.o netrc.o unmime.o conf.o checkalias.o lock.o rcfile_l.o rcfile_y.o norm_charmap.o pop3.o imap.o etrn.o odmr.o libfm.a /usr/local/lib/libintl.so -L/usr/local/lib /usr/local/lib/libiconv.so -Wl,-rpath -Wl,/usr/local/lib -lcrypt -lmd -lkvm -lcom_err -lssl -lcrypto -L/usr/lib -lgssapi -lheimntlm -lkrb5 -lhx509 -lcom_err -lcrypto -lasn1 -lroken -lcrypt
clang version 2.8 (branches/release_28)
Target: x86_64-portbld-freebsd8.1
Thread model: posix
clang: warning: argument unused during compilation: '-ggdb3'
"/usr/local/bin/ld" --eh-frame-hdr -dynamic-linker /libexec/ld-elf.so.1 -o fetchmail /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o -L/usr/lib -L/usr/local/lib -L/usr/lib socket.o getpass.o fetchmail.o env.o idle.o options.o daemon.o driver.o transact.o sink.o smtp.o idlist.o uid.o mxget.o md5ify.o cram.o gssapi.o opie.o interface.o netrc.o unmime.o conf.o checkalias.o lock.o rcfile_l.o rcfile_y.o norm_charmap.o pop3.o imap.o etrn.o odmr.o libfm.a /usr/local/lib/libintl.so /usr/local/lib/libiconv.so -rpath /usr/local/lib -lcrypt -lmd -lkvm -lcom_err -lssl -lcrypto -lgssapi -lheimntlm -lkrb5 -lhx509 -lcom_err -lcrypto -lasn1 -lroken -lcrypt -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/local/bin/ld: error in /usr/lib/crtend.o(.eh_frame); no .eh_frame_hdr table will be created.
>How-To-Repeat:
Run these commands:
# Install prerequisites
portmaster devel/binutils lang/clang devel/git devel/autotools
# Reproduce problem:
cd /var/tmp
git clone git://gitorious.org/fetchmail/fetchmail.git
cd fetchmail
autoreconf -isv
./configure '-C' '--with-ssl' '--with-gssapi' \
'CFLAGS=-O2 -ggdb3 -Wall -Wextra -pedantic' 'CC=clang'
make -sj $(sysctl -n kern.smp.cpus)
rm fetchmail
make
# this should trigger the problem
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list