URL:
  <http://savannah.gnu.org/bugs/?34875>

                 Summary: After switching to gcc 4.6 base configure fails
                 Project: GNUstep
            Submitted by: FredKiefer
            Submitted on: Mo 21 Nov 2011 21:04:39 GMT
                Category: Base/Foundation
                Severity: 2 - Minor
              Item Group: Bug
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

I upgrades OpenSuse to 12.1 which comes with gcc 4.6.2 and now configures
fails to detect Objective-C support with the following error in config.log:

configure:12635: checking whether objc really works
configure:12665: gcc -o conftest -g -O2  -I/usr/GNUstep/System/Library/Headers
-I/usr/GNUstep/Local/Library/Headers -I/usr/GNUstep/Local/Library/Headers 
-fgnu-runtime -x objective-c  -L/usr/GNUstep/System/Library/Libraries
-L/usr/GNUstep/Local/Library/Libraries -L/usr/GNUstep/Local/Library/Libraries
conftest.c -lrt -ldl  -lpthread -rdynamic -pthread -shared-libgcc -fexceptions
-fgnu-runtime -L/root/GNUstep/Library/Libraries
-L/usr/GNUstep/Local/Library/Libraries -L/usr/GNUstep/System/Library/Libraries
-lpthread -lobjc -lm   -lpthread  >&5
In file included from /usr/GNUstep/System/Library/Headers/objc/runtime.h:1:0,
                 from ./config/objc-common.g:7,
                 from ./config/config.objc.m:2,
                 from conftest.c:97:
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:126:1: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:135:1: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:139:1: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:185:32: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:187:30: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:189:37: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:189:48: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:191:29: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:193:30: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:195:20: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:197:38: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:199:27: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:201:37: error:
unknown type name 'Method_t'
/usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h:203:30: error:
unknown type name 'Method_t'
In file included from ./config/config.objc.m:2:0,
                 from conftest.c:97:
./config/objc-common.g:23:1: warning: cannot find interface declaration for
'NXConstantString' [enabled by default]
configure:12669: $? = 1
configure: program exited with status 1

The first thing I notices was that the link to objc was wrong on the system:
 ls -l /usr/include/objc 
lrwxrwxrwx 1 root root 49 14. Feb 2011  /usr/include/objc ->
/usr/lib64/gcc/x86_64-suse-linux/4.5/include/objc

But changing this to the new objc directory didn't help. To me the problem now
seems to be that the compiler picks up the runtime.h file from the previous
configuration with gcc 4.5 which points to the ObjectiveC2/runtime.h instead
of using the one that comes with the compiler (or rather libobjc). I think we
should not include any of the GNUstep Header installation directories here.
This may either be a GNUstep make error or a base error, not sure which.

Removing the file /usr/GNUstep/System/Library/Headers/ObjectiveC2/runtime.h
solves the problem.


As an add-on, I see this warning a lot in the config.log file with gcc 4.6.
Perhaps we need to change the check for an old runtime?

./config/objc-common.g:23:1: warning: cannot find interface declaration for
'NXConstantString' [enabled by default]







    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?34875>

_______________________________________________
  Nachricht geschickt von/durch Savannah
  http://savannah.gnu.org/


_______________________________________________
Bug-gnustep mailing list
Bug-gnustep@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-gnustep

Reply via email to