[MacPorts] #15496: llvm +universal doesn't build
#15496: llvm +universal doesn't build -------------------------------------+-------------------------------------- Reporter: ryandesign@macports.org | Owner: erickt@macports.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.7.0 Keywords: | -------------------------------------+-------------------------------------- Building a universal variant of llvm doesn't seem to work: {{{ $ sudo port install llvm +universal ---> Fetching llvm ---> Verifying checksum(s) for llvm ---> Extracting llvm ---> Configuring llvm ---> Building llvm with target tools-only Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build" && nice -n 1 make tools-only " returned error 2 Command output: llvm[2]: Compiling TableGen.cpp for Release build llvm[2]: Compiling TableGenBackend.cpp for Release build llvm[2]: Linking Release executable tblgen (without symbols) /usr/bin/ld: for architecture ppc /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/AsmWriterEmitter.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/CallingConvEmitter.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/CodeEmitterGen.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/CodeGenDAGPatterns.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/CodeGenInstruction.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/CodeGenTarget.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/DAGISelEmitter.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/InstrEnumEmitter.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/InstrInfoEmitter.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/IntrinsicEmitter.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/Record.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/RegisterInfoEmitter.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/SubtargetEmitter.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/TGLexer.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/TGParser.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/TableGen.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/utils/TableGen/Release/TableGenBackend.o cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (file not loaded) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/Release/lib/libLLVMSupport.a archive's cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (can't load from it) /usr/bin/ld: warning /opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/Release/lib/libLLVMSystem.a archive's cputype (7, architecture i386) does not match cputype (18) for specified -arch flag: ppc (can't load from it) /usr/bin/ld: Undefined symbols: _main collect2: ld returned 1 exit status lipo: can't open input file: /var/tmp//cc9jNQ2x.out (No such file or directory) make[2]: *** [/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build/Release/bin/tblgen] Error 1 make[1]: *** [TableGen/.makeall] Error 2 make: *** [all] Error 1 Error: Status 1 encountered during processing. $ }}} -- Ticket URL: <http://trac.macports.org/ticket/15496> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15496: llvm +universal doesn't build -------------------------------------+-------------------------------------- Reporter: ryandesign@… | Owner: erickt@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.0 Keywords: | Port: llvm -------------------------------------+-------------------------------------- Changes (by ryandesign@…): * port: => llvm Comment: I disabled the universal variant for now in r56930. If you can figure out how to make it work, please reenable. -- Ticket URL: <http://trac.macports.org/ticket/15496#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15496: llvm +universal doesn't build -------------------------------------+-------------------------------------- Reporter: ryandesign@… | Owner: erickt@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.0 Keywords: | Port: llvm -------------------------------------+-------------------------------------- Comment(by ryandesign@…): Using the [attachment:llvm-universal.diff attached patch] using the muniversal portgroup gets close to allowing a universal build, but the llvm-config program differs between architectures, and I don't know how to resolve it. {{{ $ diff -ru work/destroot-{i386,x86_64}/opt/local/bin/llvm-config --- work/destroot-i386/opt/local/bin/llvm-config 2009-12-01 17:13:20.000000000 -0600 +++ work/destroot-x86_64/opt/local/bin/llvm-config 2009-12-01 17:12:47.000000000 -0600 @@ -23,9 +23,9 @@ my $PACKAGE_NAME = q{llvm}; my $VERSION = q{2.6}; my $PREFIX = q{/opt/local}; -my $LLVM_CONFIGTIME = q{Tue Dec 1 16:32:20 CST 2009}; +my $LLVM_CONFIGTIME = q{Tue Dec 1 16:31:22 CST 2009}; my $LLVM_SRC_ROOT = q{/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/llvm-2.6}; -my $LLVM_OBJ_ROOT = q{/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build-i386}; +my $LLVM_OBJ_ROOT = q{/opt/local/var/macports/build/_Users_rschmidt_macports_dports_lang_llvm/work/build-x86_64}; my $LLVM_ON_WIN32 = q{0}; my $LLVM_ON_UNIX = q{1}; my $LLVMGCCDIR = q{}; @@ -37,8 +37,8 @@ my $SHLIBEXT = q{.dylib}; my $EXEEXT = q{}; my $OS = q{Darwin}; -my $ARCH = lc(q{x86}); -my $TARGET_TRIPLE = q{i386-apple-darwin10}; +my $ARCH = lc(q{x86_64}); +my $TARGET_TRIPLE = q{x86_64-apple-darwin10}; my $TARGETS_TO_BUILD = q{X86 Sparc PowerPC Alpha ARM Mips CellSPU PIC16 XCore MSP430 SystemZ Blackfin CBackend MSIL CppBackend}; my $TARGET_HAS_JIT = q{1}; my @TARGETS_BUILT = map { lc($_) } qw{X86 Sparc PowerPC Alpha ARM Mips CellSPU PIC16 XCore MSP430 SystemZ Blackfin CBackend MSIL CppBackend}; }}} -- Ticket URL: <http://trac.macports.org/ticket/15496#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15496: llvm +universal doesn't build -------------------------------------+-------------------------------------- Reporter: ryandesign@… | Owner: erickt@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.0 Keywords: | Port: llvm -------------------------------------+-------------------------------------- Comment(by israfel33@…): Following seems to work: port configure llvm cd `port dir llvm` cd work/build sudo make UNIVERSAL=yes UNIVERSAL_ARCH="i386 x86_64" sudo make install Do not know how to do this using configure flags :-( -- Ticket URL: <http://trac.macports.org/ticket/15496#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15496: llvm +universal doesn't build -------------------------------------+-------------------------------------- Reporter: ryandesign@… | Owner: erickt@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.0 Keywords: | Port: llvm -------------------------------------+-------------------------------------- Comment(by smokris@…): [comment:4 israfel33@…]'s instructions above aren't working for me (perhaps something has changed in the year that's elapsed since that comment). It builds for about an hour, then says: {{{ make[2]: *** No rule to make target `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_llvm/work/llvm-2.8/Release/lib/libLLVM-2.8.dylib', needed by `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_llvm/work/llvm-2.8/Release/bin/opt'. Stop. }}} (I'm not sure offhand how to further troubleshoot this.) -- Ticket URL: <https://trac.macports.org/ticket/15496#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15496: llvm +universal doesn't build -------------------------------------+-------------------------------------- Reporter: ryandesign@… | Owner: erickt@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.7.0 Keywords: | Port: llvm -------------------------------------+-------------------------------------- Comment(by ryandesign@…): Replying to [comment:4 israfel33@…]:
sudo make UNIVERSAL=yes UNIVERSAL_ARCH="i386 x86_64"
Yes, this seems to be [https://github.com/mxcl/homebrew/pull/3535 how Homebrew is doing it] now and [http://beginrescueend.com/interpreters/macruby/ how macruby recommends compiling it]. Replying to [comment:6 smokris@…]:
make[2]: *** No rule to make target `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_llvm/work/llvm-2.8/Release/lib/libLLVM-2.8.dylib', needed by `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_llvm/work/llvm-2.8/Release/bin/opt'. Stop.
Yes, this seems to be [http://llvm.org/bugs/show_bug.cgi?id=9534 reported in llvm's issue tracker] as well. I get it too. I'll attach a patch of my new update attempt so far. -- Ticket URL: <https://trac.macports.org/ticket/15496#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#15496: llvm +universal doesn't build ---------------------------+---------------------- Reporter: ryandesign@… | Owner: erickt@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.7.0 Resolution: wontfix | Keywords: Port: llvm | ---------------------------+---------------------- Changes (by larryv@…): * status: new => closed * resolution: => wontfix Comment: Assuming this is no longer relevant. We don’t even have an `llvm` port anymore. -- Ticket URL: <https://trac.macports.org/ticket/15496#comment:8> MacPorts <http://www.macports.org/> Ports system for OS X
#15496: llvm +universal doesn't build ---------------------------+---------------------- Reporter: ryandesign@… | Owner: erickt@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.7.0 Resolution: wontfix | Keywords: Port: llvm | ---------------------------+---------------------- Comment (by ryandesign@…): Indeed: {{{ $ port installed | grep llvm- llvm-2.9 @2.9_13+universal (active) llvm-3.0 @3.0_12+universal (active) llvm-3.1 @3.1_7+universal (active) llvm-3.2 @3.2_1+universal (active) llvm-3.3 @3.3_0+universal (active) llvm-gcc42 @2336.11_1+universal (active) }}} -- Ticket URL: <https://trac.macports.org/ticket/15496#comment:9> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts