[LLVMdev] llvm/clang test failures on powerpc-darwin8
David Fang
fang at csl.cornell.edu
Fri Dec 16 10:12:38 PST 2011
>> Hi Jack,
>> I never managed to successfully build llvm29 on powerpc-darwin8, after
>> running into some build issues, and having filed bug 9958, I got the
>> impression of ppc-darwin being "not supported", so I didn't put much more
>> effort into it back then. However llvm28 did build, and I still have it
>> installed and hidden away. (It looks like *someone* runs ppc-darwin a
>> buildbot, but not for darwin8.) Knowing what I've learned so far, the
>> effort would be similar, perhaps even duplicate to just trying to fix
>> things directly with g++-4.0.1. Time will tell, I suppose.
>>
>> Fang
>>
>
> David,
> I suspect you might be running into problem with...
>
> CMAKE_OPTIONS="-DLLVM_BUILD_32_BITS:BOOL=ON -DLLVM_TARGETS_TO_BUILD=PowerPC"
>
> not working properly in the llvm 2.9 release for building with cmake.
>
> http://llvm.org/bugs/show_bug.cgi?id=9957
>
> If you can tolerate the complete build by changing this to...
>
> CMAKE_OPTIONS="-DLLVM_BUILD_32_BITS:BOOL=ON"
>
> then llvm 2.9 should build on powerpc-apple-darwin8. This issue shouldn't exist for
> i386-apple-darwin8.
> Jack
I took care of that issue already, then there's:
http://llvm.org/bugs/show_bug.cgi?id=9958
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: multiple definitions of
symbol _abort
/usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libpthread.dylib(abort.So)
definition of _abort
../../lib/libLLVMSupport.a(Signals.cpp.o) definition of _abort in section
(__TEXT,__text)
collect2: ld returned 1 exit status
make[2]: *** [bin/tblgen] Error 1
I don't see this issue on 3.0 or trunk, but the linker does issue
repeated warnings in all of my build logs with 3.0 and trunk:
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning suggest use of
-bind_at_load, as lazy binding may result in errors or different symbols being used
symbol _abort used from dynamic library
../../lib/libLLVMSupport.dylib(Signals.cpp.o) not from earlier dynamic library
/usr/lib/libSystem.B.dylib(abort.So)
symbol _raise used from dynamic library
../../lib/libLLVMSupport.dylib(Signals.cpp.o) not from earlier dynamic library
/usr/lib/libSystem.B.dylib(raise.So)
I haven't tried to add the -bind_at_load flag to the executable linker
flags yet, not even sure if that would be correct.
Fang
--
David Fang
http://www.csl.cornell.edu/~fang/
More information about the llvm-dev
mailing list