Opened 12 years ago

Closed 11 years ago

#36161 closed defect (fixed)

cctools and ld64 are required as build dependency in addition to runtime dependency for some compilers

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: jeremyhu (Jeremy Huddleston Sequoia)
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc:
Port: apple-gcc42

Description

I cannot build apple-gcc42 anymore. I have deactivated my old apple-gcc42, ld64, and cctools. I have run:

$ sudo port build apple-gcc42 -universal build.jobs=1

The result is attached. This is on OS X 10.8.1 with Xcode 4.4.1.

Attachments (2)

apple-gcc42.main.log.bz2 (73.0 KB) - added by ryandesign (Ryan Carsten Schmidt) 12 years ago.
as (21 bytes) - added by ryandesign (Ryan Carsten Schmidt) 12 years ago.

Download all attachments as: .zip

Change History (14)

Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: apple-gcc42.main.log.bz2 added

comment:1 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

WTF... that makes no sense...

:info:build /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/xgcc -B/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/ -B/opt/local/x86_64-apple-darwin12/bin/ -B/opt/local/x86_64-apple-darwin12/lib/ -isystem /opt/local/x86_64-apple-darwin12/include -isystem /opt/local/x86_64-apple-darwin12/sys-include  -mmacosx-version-min=10.4 -O2  -O2 -g -O2  -std=gnu89  -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/. -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../include -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../libcpp/include  -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../libdecnumber -I../libdecnumber -DL_ucmpdi2  -c /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.c -o libgcc/./_ucmpdi2.o
:info:build /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found
:info:build /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found
:info:build /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found
:info:build /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found
:info:build /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found
:info:build /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found
:info:build /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found
:info:build make[5]: *** [libgcc/./_negdi2.o] Error 2
:info:build make[5]: *** Waiting for unfinished jobs....
:info:build make[5]: *** [libgcc/./_ashrdi3.o] Error 2
:info:build make[5]: *** [libgcc/./_ashldi3.o] Error 2
:info:build make[5]: *** [libgcc/./_lshrdi3.o] Error 2
:info:build make[5]: *** [libgcc/./_cmpdi2.o] Error 2
:info:build make[5]: *** [libgcc/./_muldi3.o] Error 2

Can you try executing that last command with -v

comment:2 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Puzzling, right? Here you go:

$ sudo /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/xgcc -B/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/ -B/opt/local/x86_64-apple-darwin12/bin/ -B/opt/local/x86_64-apple-darwin12/lib/ -isystem /opt/local/x86_64-apple-darwin12/include -isystem /opt/local/x86_64-apple-darwin12/sys-include  -mmacosx-version-min=10.4 -O2  -O2 -g -O2  -std=gnu89  -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -pipe -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/. -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../include -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../libcpp/include  -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../libdecnumber -I../libdecnumber -DL_ucmpdi2  -c /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.c -o libgcc/./_ucmpdi2.o -v
Reading specs from /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/specs
Target: x86_64-apple-darwin12
Configured with: /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/configure --disable-checking --prefix=/opt/local --mandir=/opt/local/share/man --enable-languages=c,c++,objc,obj-c++ --libexecdir=/opt/local/libexec/apple-gcc42 --libdir=/opt/local/lib/apple-gcc42 --includedir=/opt/local/include/apple-gcc42 --program-suffix=-apple-4.2 --with-system-zlib --disable-nls --with-slibdir=/usr/lib --build=x86_64-apple-darwin12 --with-gxx-include-dir=/usr/include/c++/4.2.1 --host=x86_64-apple-darwin12 --target=x86_64-apple-darwin12
Thread model: posix
gcc version 4.2.1 (Apple Inc. build 5666) (dot 3) (MacPorts apple-gcc42 5666.3_8)
 /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/cc1 -quiet -v -I. -I. -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/. -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../include -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../libcpp/include -I/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../libdecnumber -I../libdecnumber -iprefix /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/gcc/../lib/apple-gcc42/gcc/x86_64-apple-darwin12/4.2.1/ -isystem /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/include -D__DYNAMIC__ -DIN_GCC -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -DL_ucmpdi2 -isystem /opt/local/x86_64-apple-darwin12/include -isystem /opt/local/x86_64-apple-darwin12/sys-include -isystem ./include /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.c -fPIC -feliminate-unused-debug-symbols -quiet -dumpbase libgcc2.c -mmacosx-version-min=10.4 -mtune=core2 -auxbase-strip libgcc/./_ucmpdi2.o -g -g -O2 -O2 -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -std=gnu89 -version -fPIC -o - |
 /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as -arch x86_64 -force_cpusubtype_ALL -o libgcc/./_ucmpdi2.o
ignoring nonexistent directory "/opt/local/x86_64-apple-darwin12/include"
ignoring nonexistent directory "/opt/local/x86_64-apple-darwin12/sys-include"
ignoring nonexistent directory "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/gcc/../lib/apple-gcc42/gcc/x86_64-apple-darwin12/4.2.1/include"
ignoring nonexistent directory "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/gcc/../lib/apple-gcc42/gcc/x86_64-apple-darwin12/4.2.1/../../../../x86_64-apple-darwin12/include"
ignoring nonexistent directory "/opt/local/lib/apple-gcc42/gcc/x86_64-apple-darwin12/4.2.1/include"
ignoring nonexistent directory "/opt/local/lib/x86_64-apple-darwin12/include"
ignoring duplicate directory "."
ignoring duplicate directory "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/."
ignoring duplicate directory "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../include"
  as it is a non-system directory that duplicates a system directory
ignoring nonexistent directory "../libdecnumber"
#include "..." search starts here:
#include <...> search starts here:
 .
 /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc
 /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../libcpp/include
 /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/../libdecnumber
 /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/include
 ./include
 /usr/local/include
 /opt/local/include
 /usr/include
 /System/Library/Frameworks (framework directory)
 /Library/Frameworks (framework directory)
End of search list.
/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found
GNU C version 4.2.1 (Apple Inc. build 5666) (dot 3) (MacPorts apple-gcc42 5666.3_8) (x86_64-apple-darwin12)
	compiled by GNU C version 4.2.1 Compatible Apple Clang 4.0 ((tags/Apple/clang-421.0.60)).
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=8192
Compiler executable checksum: ee1d9cb97b75e75251f84de9ddb754ee
/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.c:32:21: error: tconfig.h: No such file or directory
/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.c:35:16: error: tm.h: No such file or directory
In file included from /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.c:73:
/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.h:263:3: error: #error "expand the table"
In file included from /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.c:73:
/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.h:362: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__bswapsi2'
/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/src/gcc/libgcc2.h:363: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__bswapdi2'

comment:3 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as -arch x86_64 -force_cpusubtype_ALL -o libgcc/./_ucmpdi2.o
...
/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as: line 2: exec: x86_64: not found

Can you attach /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/as

Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: as added

comment:4 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Attached; it's not very exciting.

comment:5 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

WTF.

FWIW, it just built fine for me and the script in my case is:

#!/bin/sh
exec /opt/local/bin/as "$@"

comment:6 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

There was no /opt/local/bin/as on my system, as I had deactivated the cctools port. It is only declared as a runtime dependency, not a build-time dependency.

comment:7 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Similarly, if I activate cctools, clean, and try again, it fails with:

/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/./gcc/collect-ld: line 2: exec: -d: invalid option

And that file contains:

#!/bin/sh
exec  "$@"

When I activate ld64, clean, and try again, then that file contains:

#!/bin/sh
exec /opt/local/bin/ld "$@"

So it sounds like both cctools and ld64 need to be in depends_lib not depends_run.

comment:8 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Yeah, as far as I knew, it was just a runtime dependency, but it makes sense that it's build time as well because of the bootstrapping...

Interesting that the issue manifests like this.

comment:9 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Summary: apple-gcc42: exec: x86_64: not foundcctools and ld64 are required as build dependency in addition to runtime dependency for some compilers

Fixed with r97799 for apple-gcc42, but I'm going to leave this open as a reminder to audit similar dependencies.

comment:10 Changed 12 years ago by reeskm (Rees Machtemes)

Jeremy, this change set breaks breaks apple-gcc42+boostrap on Tiger.

This is because the changeset adds build and runtime deps on ld64 and cctools, and the point of the +bootstrap is to build the package without these deps on Tiger.

https://trac.macports.org/ticket/36779

Last edited 12 years ago by reeskm (Rees Machtemes) (previous) (diff)

comment:11 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Thanks, fixed with r99182

comment:12 Changed 11 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.