gnustep / libobjc2

Objective-C runtime library intended for use with Clang.
http://www.gnustep.org/
MIT License
434 stars 118 forks source link

Build on OpenBSD 7.0 fails - undefined cxx_throw test_eh_personality #216

Closed rmottola closed 9 months ago

rmottola commented 2 years ago

A fresh build, fresh configured with "ccmake ." yields:

[ 12%] Linking C executable CXXExceptions_legacy_optimised
ld: error: /home/multix/code/gnustep-svc/libobjc2/Build/libobjc.so: undefined reference to cxx_throw() [--no-allow-shlib-undefined]
ld: error: /home/multix/code/gnustep-svc/libobjc2/Build/libobjc.so: undefined reference to test_eh_personality [--no-allow-shlib-undefined]
cc: error: linker command failed with exit code 1 (use -v to see invocation)
rmottola commented 1 year ago

This still happens on 7.2, something gets detected wrong. If I turn off OLDABI_COMPAT I get the same error, in a different file


ld: error: ../libobjc.so.4.6: undefined reference to cxx_throw() [--no-allow-shlib-undefined]
ld: error: ../libobjc.so.4.6: undefined reference to test_eh_personality [--no-allow-shlib-undefined]
cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error 1 in . (Test/CMakeFiles/CXXExceptions_optimised.dir/build.make:117 'Test/CXXExceptions_optimised')
*** Error 2 in . (CMakeFiles/Makefile2:2853 'Test/CMakeFiles/CXXExceptions_optimised.dir/all')
*** Error 2 in /home/multix/code/gnustep-cvs/libobjc2/Build (Makefile:166 'all': make -s -f CMakeFiles/Makefile2 al```
davidchisnall commented 1 year ago

The CMake has now been reworked and has a bunch of bug fixes. Can you try again?