[LLVMdev] dyld: lazy symbol binding failed: fast lazy bind offset out of range

Jack Howarth howarth at bromo.med.uc.edu
Mon Oct 22 11:52:10 PDT 2012


On Mon, Oct 22, 2012 at 11:40:32AM -0700, Nick Kledzik wrote:
> 
> On Oct 22, 2012, at 11:34 AM, Jack Howarth wrote:
> 
> > Nick,
> >   I have uploaded the full walk with 'set env DYLD_PRINT_INITIALIZERS'. It didn't seem very informative
> > as the dyld error occurs right after...
> > 
> > (gdb)
> > llvm::sys::DynamicLibrary::getPermanentLibrary (filename=0x142903da8 "/sw/opt/llvm-3.2/lib/LLVMPolly.so", errMsg=0x7fff5fbfe6e0) at /sw/src/fink.build/llvm32-3.2-0/llvm-3.2/lib/Support/DynamicLibrary.cpp:77
> > 77        void *handle = dlopen(filename, RTLD_LAZY|RTLD_GLOBAL);
> > (gdb)
> > Reading symbols for shared libraries ... done
> > dyld: calling initializer function 0x100eea5b0 in /sw/opt/llvm-3.2/lib/LLVMPolly.so
> 
> You need to set a break point at 0x100eea5b0 and run again until that break is hit, then start stepping.
> 
> > Are there any tricks for identifying the order that the symbols are being resolved?
> (gdb) set env DYLD_PRINT_BINDINGS 1
> will show each use of a symbol as it is bound.  This can be *a lot* of information.  
> 
> -Nick

Nick,
   I will try one other thing first. I'll rebuild gcc47 without graphite support so cc1 has no linkages on cloog/ppl/isl
and the test it against a stock build of llvm32 to see if this suppresses the error.
    Jack



More information about the llvm-dev mailing list