The latest Apple GCC is producing code that Xcode Tools 3.2.3 just can't handle. Compiling =media-libs/gst-plugins-base-0.10.31, for example, produces this: {standard input}:2044:non-relocatable subtraction expression, "LC2" minus "L00000000008$pb" {standard input}:2044:symbol: "L00000000008$pb" can't be undefined in a subtraction expression {standard input}:1976:non-relocatable subtraction expression, "LC2" minus "L00000000007$pb" {standard input}:1976:symbol: "L00000000007$pb" can't be undefined in a subtraction expression {standard input}:1905:non-relocatable subtraction expression, "LC0" minus "L00000000006$pb" {standard input}:1905:symbol: "L00000000006$pb" can't be undefined in a subtraction expression {standard input}:1854:non-relocatable subtraction expression, "LC0" minus "L00000000005$pb" {standard input}:1854:symbol: "L00000000005$pb" can't be undefined in a subtraction expression {standard input}:unknown:Undefined local symbol L00000000005$pb {standard input}:unknown:Undefined local symbol L00000000006$pb {standard input}:unknown:Undefined local symbol L00000000007$pb {standard input}:unknown:Undefined local symbol L00000000008$pb make[4]: *** [libgstaudioconvert_la-tmp-orc.lo] Error 1 The source for Xcode Tools 4.0 has been released. Heck, the source for 3.2.5 has been released. It's long past time to update. Reproducible: Always Steps to Reproduce: None really, this is an update request. Actual Results: sys-devel/binutils-apple should be the current version. Expected Results: sys-devel/binutils-apple is outdated. Portage 2.2.01.18252-prefix (prefix/darwin/macos/10.6/x86, gcc-4.2.1, unavailable, 10.7.0 i386) ================================================================= System uname: Darwin-10.7.0-i386-32bit Timestamp of tree: Wed, 11 May 2011 01:39:21 +0000 distcc 3.1-toolwhip.1 i386-apple-darwin10.0 [disabled] app-shells/bash: 4.2_p8 dev-lang/python: 2.7.1-r1 dev-util/cmake: 2.8.3-r1 sys-devel/autoconf: 2.68 sys-devel/automake: 1.11.1 sys-devel/gcc-config: 1.4.1-r00.2 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82 Repositories: gentoo_prefix Installed sets: ACCEPT_KEYWORDS="~x86-macos" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-apple-darwin10" CFLAGS="-O2 -pipe -march=core2" CHOST="i686-apple-darwin10" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/portage /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-O2 -pipe -march=core2" DISTDIR="/Users/chip/Gentoo/usr/portage/distfiles" FEATURES="assume-digests binpkg-logs collision-protect distlocks fixlafiles fixpackages news nostrip parallel-fetch preserve-libs protect-owned sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="" GENTOO_MIRRORS="http://distfiles.gentoo.org" LDFLAGS="-Wl,-dead_strip_dylibs" MAKEOPTS="-j4" PKGDIR="/Users/chip/Gentoo/usr/portage/packages" PORTAGE_CONFIGROOT="/Users/chip/Gentoo/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/Users/chip/Gentoo/var/tmp" PORTDIR="/Users/chip/Gentoo/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.prefix.freens.org/gentoo-portage-prefix" USE="aqua bash-completion berkdb bzip2 coreaudio cracklib crypt curl cxx dbus exceptions expat extensions gdbm gmp gnutls gpg gzip iconv icu ipv6 jbig jpeg libssh2 lzma lzo mmx mmxext mng modules mysql ncurses nls objc objc++ pch perl png prefix python qt3support readline ruby sasl sql sqlite3 sse sse2 ssl subversion tcl threads tiff tk truetype unicode vim-syntax x86-macos xml zlib" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="Darwin" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse" KERNEL="Darwin" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
with the only problem that 4.0 is a total rewrite from scratch which needs 4 or 5 missing libraries to compile If you're interested, I've got a skeleton/partly working ebuild here.
3.2.6 is in the tree now, which is what was shipped when apple also released the latest compiler we have in the tree. That should solve this bug. I also added the 4.0 ebuild in case you want to play around to try and get it to build.
Thanks. Unfortunately, this doesn't solve the problem that prompted me to file this bug in the first place. I'll file a new bug for that issue. And yes, I have been playing with the 4.0 ebuild.
FWIW (I know this is closed), but I burned most of a day trying to get binutils-4.0 building. Needs dyld-132.13 and libunwind-30 added to the list of needed libraries, but I finally just gave up when dyld-132.13 needed a nonexistent coreSymbolicationDyldSupport.hpp. Couldn't find it anywhere - XCode 4.1 on 10.7, CHOST=x86_64-apple-darwin11. Was really hoping for a linker that would understand AVX. What are the chances of making a binutils-config profile that just uses the system's available tools?
native-cctools is the thing you're looking for. Would you mind sharing your work sofar? You seem to have come a bit further than I did at the time.
life's much nicer on a i7 (compared to a single G5/2GHz) I've got 4.1 to compile here with some patience and lots of recompiles.
Ok, I'll commit this binutils-apple, but no keywords yet, as I don't trust this thing to be able to do anything useful at the moment. At least it seems to be able to successfully link and assemble the 3.2.6 version. It's slotted with the 3.x series, so you can install it without necessarily nuking your system immediately. % ld -v @(#)PROGRAM:ld PROJECT:ld64-123.2.1 (Gentoo binutils-apple-4.1) Library search paths: /Library/Gentoo/usr/x86_64-apple-darwin11/lib/gcc /Library/Gentoo/usr/x86_64-apple-darwin11/lib /Library/Gentoo/usr/lib /Library/Gentoo/lib /usr/lib /usr/local/lib Framework search paths: /Library/Frameworks/ /System/Library/Frameworks/ ld: warning: -arch not specified ld: no object files specified for inferred architecture x86_64
Excellent! The 4.1 tools seem to work just fine. I was able to build gcc-apple with them, as well as several other ebuilds.
Thanks for the feedback. It looks ok here too.