[MacPorts] #39761: llvm-3.3 can't link on Leopard/PPC

MacPorts noreply at macports.org
Tue Jul 16 08:48:17 PDT 2013


#39761: llvm-3.3 can't link on Leopard/PPC
----------------------------------+--------------------------------
 Reporter:  khepler@…             |      Owner:  macports-tickets@…
     Type:  defect                |     Status:  new
 Priority:  Normal                |  Milestone:
Component:  ports                 |    Version:  2.1.3
 Keywords:  ld64 leopard powerpc  |       Port:  llvm-3.3
----------------------------------+--------------------------------
 I've tried all permutations I can think of on my G4 PowerBook, can't get
 past:

 {{{
 llvm[1]: Linking Release+Debug+Asserts Shared Library libLLVM-3.3.dylib
 ccache /usr/bin/g++-4.2
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.3/llvm-3.3/work/llvm-3.3.src/include
 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.3/llvm-3.3/work/llvm-3.3.src/tools
 /llvm-shlib  -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS
 -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Os  -g -fvisibility-inlines-
 hidden -fno-exceptions -fno-common -Woverloaded-virtual -Wcast-qual -pipe
 -O2 -arch ppc -pipe -O2 -arch ppc -Os -g -Wl,-rpath
 -Wl, at executable_path/../lib
 -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.3/llvm-3.3/work/llvm-3.3.src/Release+Debug+Asserts/lib
 -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.3/llvm-3.3/work/llvm-3.3.src/Release+Debug+Asserts/lib
 -arch ppc -arch ppc -mmacosx-version-min=10.5  -pedantic -Wno-long-long
 -Wall -W -Wno-unused-parameter -Wwrite-strings     -Wno-missing-field-
 initializers  -dynamiclib -mmacosx-version-min=10.5 -o
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.3/llvm-3.3/work/llvm-3.3.src/Release+Debug+Asserts/lib/libLLVM-3.3.dylib
 \
            -lLLVMAArch64AsmParser -lLLVMAArch64AsmPrinter
 -lLLVMAArch64CodeGen -lLLVMAArch64Desc -lLLVMAArch64Disassembler
 -lLLVMAArch64Info -lLLVMAArch64Utils -lLLVMARMAsmParser
 -lLLVMARMAsmPrinter -lLLVMARMCodeGen -lLLVMARMDesc -lLLVMARMDisassembler
 -lLLVMARMInfo -lLLVMAnalysis -lLLVMArchive -lLLVMAsmParser
 -lLLVMAsmPrinter -lLLVMBitReader -lLLVMBitWriter -lLLVMCodeGen -lLLVMCore
 -lLLVMCppBackendCodeGen -lLLVMCppBackendInfo -lLLVMDebugInfo
 -lLLVMExecutionEngine -lLLVMHexagonAsmPrinter -lLLVMHexagonCodeGen
 -lLLVMHexagonDesc -lLLVMHexagonInfo -lLLVMIRReader -lLLVMInstCombine
 -lLLVMInstrumentation -lLLVMInterpreter -lLLVMJIT -lLLVMLinker
 -lLLVMMBlazeAsmParser -lLLVMMBlazeAsmPrinter -lLLVMMBlazeCodeGen
 -lLLVMMBlazeDesc -lLLVMMBlazeDisassembler -lLLVMMBlazeInfo -lLLVMMC
 -lLLVMMCDisassembler -lLLVMMCJIT -lLLVMMCParser -lLLVMMSP430AsmPrinter
 -lLLVMMSP430CodeGen -lLLVMMSP430Desc -lLLVMMSP430Info -lLLVMMipsAsmParser
 -lLLVMMipsAsmPrinter -lLLVMMipsCodeGen -lLLVMMipsDesc
 -lLLVMMipsDisassembler -lLLVMMipsInfo -lLLVMNVPTXAsmPrinter
 -lLLVMNVPTXCodeGen -lLLVMNVPTXDesc -lLLVMNVPTXInfo -lLLVMObjCARCOpts
 -lLLVMObject -lLLVMOption -lLLVMPowerPCAsmParser -lLLVMPowerPCAsmPrinter
 -lLLVMPowerPCCodeGen -lLLVMPowerPCDesc -lLLVMPowerPCInfo -lLLVMRuntimeDyld
 -lLLVMScalarOpts -lLLVMSelectionDAG -lLLVMSparcCodeGen -lLLVMSparcDesc
 -lLLVMSparcInfo -lLLVMSupport -lLLVMSystemZAsmParser
 -lLLVMSystemZAsmPrinter -lLLVMSystemZCodeGen -lLLVMSystemZDesc
 -lLLVMSystemZInfo -lLLVMTarget -lLLVMTransformUtils -lLLVMVectorize
 -lLLVMX86AsmParser -lLLVMX86AsmPrinter -lLLVMX86CodeGen -lLLVMX86Desc
 -lLLVMX86Disassembler -lLLVMX86Info -lLLVMX86Utils -lLLVMXCoreAsmPrinter
 -lLLVMXCoreCodeGen -lLLVMXCoreDesc -lLLVMXCoreDisassembler -lLLVMXCoreInfo
 -lLLVMipa -lLLVMipo -all_load -Wl,-dead_strip -Wl,-seg1addr -Wl,0xE0000000
 -Wl,-install_name -Wl,"@executable_path/../lib/libLLVM-3.3.dylib" -lz
 -lpthread -lffi -lm
 ld: bl out of range (-16932856 max is +/-16M) from
 llvm::EmitStrLen(llvm::Value*, llvm::IRBuilder<true, llvm::ConstantFolder,
 llvm::IRBuilderDefaultInserter<true> >&, llvm::DataLayout const*,
 llvm::TargetLibraryInfo const*)at 0xE103A560 in __text of
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.3/llvm-3.3/work/llvm-3.3.src/Release+Debug+Asserts/lib/libLLVMTransformUtils.a(BuildLibCalls.o)
 to llvm::Twine::Twine(char const*)at 0xE00148F0 in __text of
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.3/llvm-3.3/work/llvm-3.3.src/Release+Debug+Asserts/lib/libLLVMAArch64AsmParser.a(AArch64AsmParser.o)
 in llvm::EmitStrLen(llvm::Value*, llvm::IRBuilder<true,
 llvm::ConstantFolder, llvm::IRBuilderDefaultInserter<true> >&,
 llvm::DataLayout const*, llvm::TargetLibraryInfo const*)from
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_llvm-3.3/llvm-3.3/work/llvm-3.3.src/Release+Debug+Asserts/lib/libLLVMTransformUtils.a(BuildLibCalls.o)
 collect2: ld returned 1 exit status
 }}}

 Seems similar to #33987, but the patch is already applied to the Portfile
 in tree.  Perhaps llvm 3.3 has simply grown too large for relative jumps
 on ppc32?  The "Linking Release+Debug+Asserts Shared Library" bit seems
 suspect, as I'm not requesting assertions variant, and I don't expect a
 debug version.

 The attached log file is under the default compiler, in this case apple-
 gcc-4.2 from Macports.  Same result with many combinations of the
 following toolchain components.  Heck, I even tried the stock Apple ld for
 laughs.

 {{{
 The following ports are currently installed:
   apple-gcc42 @5666.3_11
   apple-gcc42 @5666.3_11+gpl3 (active)
   cctools @806_2+llvm31
   cctools @806_2+llvm32 (active)
   clang-3.2 @3.2_1+analyzer+assertions+python27 (active)
   gcc44 @4.4.7_6 (active)
   gcc45 @4.5.4_7 (active)
   ld64 @97.17_2+llvm31
   ld64 @97.17_2+llvm32
   llvm-3.1 @3.1_7 (active)
   llvm-3.2 @3.2_1+assertions (active)
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/39761>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list