Hi,
On 28 May 2013, at 04:47, David Wetzel <[email protected]> wrote: > WARNING: It is strongly recommended that you compile with clang CMake will default to using whatever CC and CXX are set to. To explicitly configure the compiler to use, you can add -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ on the CMake command line. See the INSTALL document for more details... > -- Using /usr/lib/libsupc++.a as the C++ runtime library This is a bug. It should be rejecting .a and only finding the .so version. If your system doesn't provide the .so, then you'll get libobjc and libobjcxx (you can force it to use libstdc++.so or libc++.so as the runtime lib if you don't mind forcing every ObjC program to link against the C++ standard library, but I prefer to avoid this for non-ObjC++ code). This should be fixed in trunk now. > /Users/dave/projects/gnustep/libobjc2/trunk/block_to_imp.c: In function > 'init_trampolines': > /Users/dave/projects/gnustep/libobjc2/trunk/block_to_imp.c:43:2: warning: > implicit declaration of function 'asprintf' This should be fixed in trunk. > /Users/dave/projects/gnustep/libobjc2/trunk/block_to_imp.c: In function > 'imp_implementationWithBlock': > /Users/dave/projects/gnustep/libobjc2/trunk/block_to_imp.c:81:11: warning: > taking address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/block_to_imp.c:82:9: warning: > taking address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/block_to_imp.c:86:11: warning: > taking address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/block_to_imp.c:87:9: warning: > taking address of expression of type 'void' These are recent-gcc warnings and are safe to ignore. > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m: In function 'retain': > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:170:13: warning: taking > address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:171:13: warning: taking > address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m: In function 'release': > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:188:13: warning: taking > address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:193:14: warning: taking > address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:194:14: warning: taking > address of expression of type 'void' > In file included from /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:499:0: > /Users/dave/projects/gnustep/libobjc2/trunk/hash_table.h: In function > 'weak_ref_table_get_cell': > /Users/dave/projects/gnustep/libobjc2/trunk/hash_table.h:343:3: warning: > passing argument 1 of 'weak_ref_compare' discards qualifiers from pointer > target type > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:467:12: note: expected 'id' > but argument is of type 'const void *' > /Users/dave/projects/gnustep/libobjc2/trunk/blocks_runtime.m: In function > '_Block_copy': > /Users/dave/projects/gnustep/libobjc2/trunk/blocks_runtime.m:244:18: warning: > taking address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/blocks_runtime.m:248:14: warning: > taking address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/blocks_runtime.m:258:24: warning: > taking address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/blocks_runtime.m: In function > '_Block_release': > /Users/dave/projects/gnustep/libobjc2/trunk/blocks_runtime.m:276:6: warning: > taking address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/blocks_runtime.m:280:11: warning: > taking address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/hash_table.h:352:4: warning: > passing argument 1 of 'weak_ref_compare' discards qualifiers from pointer > target type > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:467:12: note: expected 'id' > but argument is of type 'const void *' > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m: In function > 'objc_storeWeak': > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:542:6: warning: taking > address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:551:6: warning: taking > address of expression of type 'void' > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m: In function > 'objc_loadWeakRetained': > /Users/dave/projects/gnustep/libobjc2/trunk/arc.m:642:6: warning: taking > address of expression of type 'void' These also all look safe to ignore (and, in some cases, spurious). > [ 48%] Building CXX object CMakeFiles/objc.dir/objcxx_eh.cc.o > Linking C shared library libobjc.so > ld: /usr/lib/libsupc++.a(si_class_type_info.o): relocation R_X86_64_32S > against `_ZTVN10__cxxabiv120__si_class_type_infoE' can not be used when > making a shared object; recompile with -fPIC > /usr/lib/libsupc++.a: could not read symbols: Bad value This is caused by it trying to use libsupc++.a instead of libsupc++.so (which you don't have) and should now be fixed. Thanks for testing! David -- Sent from my STANTEC-ZEBRA _______________________________________________ Gnustep-dev mailing list [email protected] https://lists.gnu.org/mailman/listinfo/gnustep-dev
