Hi Wolfgang,
Wolfgang Lux wrote:
Am 18.12.2018 um 22:01 schrieb Riccardo Mottola <riccardo.mott...@libero.it>:
Making all for subproject ObjectiveC2...
Compiling file runtime.c ...
runtime.c:35:27: fatal error: objc/objc-api.h: No such file or directory
#include <objc/objc-api.h>
^
compilation terminated.
which is expected, the gcc 4.9 runtime does not have that file... nor does it
have gcc 6.5 or 8.2
Right. The ObjectiveC2 library is supposed to provide a compatibility interface
layer around the historic GNU runtime API, providing API calls compatible with
Apple's new ObjectiveC-2 runtime API. This Objective-C runtime bundles with gcc
has been updated in gcc 4.6 IIRC, so the ObjectiveC2 directory shouldn't be
compiled in the first place when you are using anything newer than gcc 4.6.
Perhaps there's an issue with the configure script so that the ObjectiveC2
library incorrectly gets compiled on your system?
Let me resurrect this thread - I was busy and did not use OpenBSD for a
while, now I wanted to and hit this issue again, I am on a different
laptop (x64 vs x86) but that doesn't matter I suppose.
renamed /usr/include/objc so that it is not found, I don't care about
using the system compiler, I only want to use gcc from pkg (why it is
4.9, I don't know... OpenBSD decisions).
For the record, the "make" configure line is:
$ ./configure --prefix=/ --with-layout=gnustep CC=egcc CXX=eg++
LDFLAGS=-Wl,-R/usr/local/lib
egcc being the name for the newer gcc installed. (4.9 that is). The objc
is in:
/usr/local/lib/gcc/x86_64-unknown-openbsd6.4/4.9.4/include/objc
which is, AFAIK, correct.
The base configure script reports:
checking the Objective-C runtime... GNU
checking for custom shared objc library... NONE
checking objc/runtime.h usability... yes
checking objc/runtime.h presence... yes
checking for objc/runtime.h... yes
checking objc/objc.h usability... yes
checking objc/objc.h presence... yes
checking for objc/objc.h... yes
checking whether objc really works... yes
checking if the compiler supports -fconstant-string-class... yes
checking if +load method is executed before main... yes
checking for objc_sync_enter... no
checking for objc_setProperty... no
checking for _Block_copy... no
checking for objc_setUncaughtExceptionHandler() in runtime... no
checking for objc_set_unexpected() in runtime... no
checking for _objc_unexpected_exception in runtime... no
configure: Disabling native Objective-C exceptions because the ObjC runtime
configure: has no way to set an uncaught exception handler. Please install
configure: a recent Objective-C runtime if you want to use them.
checking whether to enable native Objective-C exceptions... no
checking for objc_sync_enter... (cached) no
this looks all correct? However, afterwards it fails as we had past month:
Compiling file runtime.c ...
runtime.c:35:27: fatal error: objc/objc-api.h: No such file or directory
#include <objc/objc-api.h>
^
compilation terminated.
You suggested this all should not be built at all, but which test is
getting confused?
Riccardo
_______________________________________________
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev