discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

things that fail to build with gcc and libobjc2


From: Sebastian Reitenbach
Subject: things that fail to build with gcc and libobjc2
Date: Wed, 6 Apr 2011 09:46:35 +0200
User-agent: KMail/1.13.5 (Linux/2.6.34.7-0.7-xen; KDE/4.4.4; x86_64; ; )

Hi,

I recompiled everything yesterday with gcc 4.2.1 and without libobjc2. For 
some of the stuff in the list I sent in the other thread, I have taken it from 
svn/cvs since the last releases available releases did not compiled. 
Everything compiled with it with the new gnustep core from svn.

Now I tried again to build everything with gcc again, but with libobjc2. The 
success rate is unfortunately not at 100%.

SOPE 1.3.4 (1.3.6 will be released probably this week, so still have to test 
newer version, but I guess there is not much changed in this file) fails to 
compile this way:

cc NGObjCRuntime.m -c \
              -MMD -MP -pipe -Wall -Wno-protocol -
DFHS_INSTALL_ROOT=\@\"/usr/local\" -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1 -
DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -fno-strict-
aliasing -fPIC -DDEBUG -fno-omit-frame-pointer -Wall -DGSWARN -DGSDIAGNOSE -
Wno-import -O2 -pipe -g -fgnu-runtime -fconstant-string-class=NSConstantString 
-I.. -I../NGStreams/ -I../../sope-xml -I./NGExtensions/ -I./FdExt.subproj/ -
I./EOExt.subproj/ -I.. -I. -I/usr/local/include -
I/SOPE-1.3.4_writes_to_HOME/GNUstep/Library/Headers -I/usr/local/include \
               -o obj/libNGExtensions.obj/NGObjCRuntime.m.o
NGObjCRuntime.m:118: error: expected ')' before 'methods'
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) instanceSize]':
NGObjCRuntime.m:172: error: dereferencing pointer to incomplete type
NGObjCRuntime.m: At top level:
NGObjCRuntime.m:177: error: expected ')' before 'MethodList_t'
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) addMethodList:]':
NGObjCRuntime.m:179: error: 'struct objc_object' has no member named 
'method_count'
NGObjCRuntime.m:185: error: expected declaration specifiers or '...' before 
'MethodList_t'
NGObjCRuntime.m:186: error: too many arguments to function 
'class_add_method_list'
NGObjCRuntime.m: At top level:
NGObjCRuntime.m:191: error: expected ')' before 'MethodList_t'
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) addClassMethodList:]':
NGObjCRuntime.m:193: error: 'struct objc_object' has no member named 
'method_count'
NGObjCRuntime.m:198: error: expected declaration specifiers or '...' before 
'MethodList_t'
NGObjCRuntime.m:199: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:199: error: too many arguments to function 
'class_add_method_list'
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) addMethods:]':
NGObjCRuntime.m:206: error: 'MethodList_t' undeclared (first use in this 
function)
NGObjCRuntime.m:206: error: (Each undeclared identifier is reported only once
NGObjCRuntime.m:206: error: for each function it appears in.)
NGObjCRuntime.m:206: error: expected ';' before 'methods'
NGObjCRuntime.m:226: error: 'methods' undeclared (first use in this function)
NGObjCRuntime.m:226: error: 'MethodList' undeclared (first use in this 
function)
NGObjCRuntime.m:230: warning: implicit declaration of function 
'fillMethodListWithSpecs'
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) addClassMethods:]':
NGObjCRuntime.m:239: error: 'MethodList_t' undeclared (first use in this 
function)
NGObjCRuntime.m:239: error: expected ';' before 'methods'
NGObjCRuntime.m:259: error: 'methods' undeclared (first use in this function)
NGObjCRuntime.m:259: error: 'MethodList' undeclared (first use in this 
function)
NGObjCRuntime.m: At top level:
NGObjCRuntime.m:286: error: expected ')' before 'IvarList_t'
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) subclass:ivarsList:]':
NGObjCRuntime.m:293: error: 'Module_t' undeclared (first use in this function)
NGObjCRuntime.m:293: error: expected ';' before 'module'
NGObjCRuntime.m:312: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:313: error: 'struct objc_object' has no member named 
'ivar_count'
NGObjCRuntime.m:319: error: 'struct objc_object' has no member named 
'ivar_list'
NGObjCRuntime.m:320: error: 'struct objc_object' has no member named 
'ivar_list'
NGObjCRuntime.m:332: error: invalid application of 'sizeof' to incomplete type 
'struct objc_class' 
NGObjCRuntime.m:333: error: invalid application of 'sizeof' to incomplete type 
'struct objc_class' 
NGObjCRuntime.m:340: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:340: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:341: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:341: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:342: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:343: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:344: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:344: error: '_CLS_META' undeclared (first use in this 
function)
NGObjCRuntime.m:345: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:345: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:346: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:347: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:348: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:349: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:350: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:351: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:355: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:355: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:356: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:357: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:358: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:359: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:359: error: '_CLS_CLASS' undeclared (first use in this 
function)
NGObjCRuntime.m:360: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:361: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:362: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:363: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:364: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:365: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:366: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:367: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:371: error: 'module' undeclared (first use in this function)
NGObjCRuntime.m:371: error: 'Module' undeclared (first use in this function)
NGObjCRuntime.m:379: error: 'Symtab' undeclared (first use in this function)
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) 
subclass:ivarNames:ivarTypes:ivarCount:]':
NGObjCRuntime.m:442: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:551: error: 'IvarList_t' undeclared (first use in this 
function)
NGObjCRuntime.m:551: error: expected ';' before 'ivars'
NGObjCRuntime.m:553: error: 'ivars' undeclared (first use in this function)
NGObjCRuntime.m:553: error: 'IvarList' undeclared (first use in this function)
NGObjCRuntime.m:553: error: invalid application of 'sizeof' to incomplete type 
'struct objc_ivar' 
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) 
instanceVariableNames]':
NGObjCRuntime.m:652: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:652: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:657: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:659: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:662: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:678: error: dereferencing pointer to incomplete type
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) 
hasInstanceVariableWithName:]':
NGObjCRuntime.m:707: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:708: error: dereferencing pointer to incomplete type
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) 
signatureOfInstanceVariableWithName:]':
NGObjCRuntime.m:732: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:733: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:738: error: dereferencing pointer to incomplete type
NGObjCRuntime.m: In function '+[NSObject(NGObjCRuntime) 
offsetOfInstanceVariableWithName:]':
NGObjCRuntime.m:766: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:767: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:770: error: dereferencing pointer to incomplete type
NGObjCRuntime.m: In function '-[_NGMethodNameEnumerator 
initWithClass:includeSuperclassMethods:]':
NGObjCRuntime.m:796: error: dereferencing pointer to incomplete type
NGObjCRuntime.m: In function '-[_NGMethodNameEnumerator nextObject]':
NGObjCRuntime.m:826: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:836: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:840: error: dereferencing pointer to incomplete type
NGObjCRuntime.m:856: error: 'Method_t' undeclared (first use in this function)
NGObjCRuntime.m:856: error: expected ';' before 'm'
NGObjCRuntime.m:859: error: 'm' undeclared (first use in this function)
NGObjCRuntime.m:859: error: dereferencing pointer to incomplete type
NGObjCRuntime.m: In function '-[NGObjCClassEnumerator nextObject]':
NGObjCRuntime.m:890: warning: 'objc_next_class' is deprecated (declared at 
/usr/local/include/objc/runtime-deprecated.h:41)
gmake[5]: *** [obj/libNGExtensions.obj/NGObjCRuntime.m.o] Error 1
gmake[4]: *** [internal-library-all_] Error 2
gmake[3]: *** [libNGExtensions.all.library.variables] Error 2
gmake[2]: *** [internal-all] Error 2
gmake[2]: Leaving directory `/home/ports/pobj/SOPE-1.3.4/SOPE-1.3.4/sope-
core/NGExtensions'
gmake[1]: *** [internal-all] Error 2
gmake[1]: Leaving directory `/home/ports/pobj/SOPE-1.3.4/SOPE-1.3.4/sope-core'
gmake: *** [internal-all] Error 2


for example, line 118 looks like this:
static void
fillMethodListWithSpecs(MethodList_t methods, SEL _selector, va_list *va) 
{
  /* takes triple: SEL, signature, IMP */
  SEL      selector;
  NSString *signature;
  IMP      imp;
  unsigned count;

  selector  = _selector;
  signature = selector  ? va_arg(*va, NSString *) : (NSString *)nil;
  imp       = signature ? va_arg(*va, IMP) : NULL;
  count     = 0;
  while ((selector != NULL) && (signature != nil) && (imp != NULL)) {
    unsigned   len;
    char       *types;
#if GNU_RUNTIME
    const char *selname;
#endif



and StepTalk from svn fails to compile with the following error message:
Making all for framework StepTalk...
cc STObjCRuntime.m -c \
              -MMD -MP -pipe -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1 -
DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -fno-strict-
aliasing -fPIC -DDEBUG -fno-omit-frame-pointer -Wall -DGSWARN -DGSDIAGNOSE -
Wno-import -O2 -pipe -g -fgnu-runtime -Wno-import -DSTEPTALK_VERSION=0.10.0 -
fconstant-string-class=NSConstantString -I./derived_src -I. -
I/usr/local/include -I/gnustep-
steptalk-0.11.0_writes_to_HOME/GNUstep/Library/Headers -I/usr/local/include \
               -o obj/StepTalk.obj/STObjCRuntime.m.o
STObjCRuntime.m: In function 'STAllObjectiveCClasses':
STObjCRuntime.m:67: warning: 'objc_next_class' is deprecated (declared at 
/usr/local/include/objc/runtime-deprecated.h:41)
STObjCRuntime.m:69: warning: implicit declaration of function 
'class_get_class_name'
STObjCRuntime.m:69: warning: passing argument 1 of 'stringWithCString:' makes 
pointer from integer without a cast
STObjCRuntime.m: In function 'STSelectorFromString':
STObjCRuntime.m:144: warning: 'sel_register_typed_name' is deprecated 
(declared at /usr/local/include/objc/runtime-deprecated.h:73)
STObjCRuntime.m: In function 'STCreateTypedSelector':
STObjCRuntime.m:165: warning: 'sel_get_name' is deprecated (declared at 
/usr/local/include/objc/runtime-deprecated.h:59)
STObjCRuntime.m:191: warning: 'sel_register_typed_name' is deprecated 
(declared at /usr/local/include/objc/runtime-deprecated.h:73)
STObjCRuntime.m: In function 'STConstructMethodSignatureForSelector':
STObjCRuntime.m:207: warning: 'sel_get_name' is deprecated (declared at 
/usr/local/include/objc/runtime-deprecated.h:59)
STObjCRuntime.m: In function 'STMethodSignatureForSelector':
STObjCRuntime.m:250: warning: 'sel_get_type' is deprecated (declared at 
/usr/local/include/objc/runtime-deprecated.h:67)
STObjCRuntime.m:255: warning: 'sel_get_type' is deprecated (declared at 
/usr/local/include/objc/runtime-deprecated.h:67)
STObjCRuntime.m: At top level:
STObjCRuntime.m:261: warning: 'struct objc_method_list' declared inside 
parameter list
STObjCRuntime.m:261: warning: its scope is only this definition or 
declaration, which is probably not what you want
STObjCRuntime.m: In function 'selectors_from_list':
STObjCRuntime.m:264: error: dereferencing pointer to incomplete type
STObjCRuntime.m:269: error: dereferencing pointer to incomplete type
STObjCRuntime.m:272: error: dereferencing pointer to incomplete type
STObjCRuntime.m:274: error: dereferencing pointer to incomplete type
STObjCRuntime.m: In function 'STAllObjectiveCSelectors':
STObjCRuntime.m:290: warning: 'objc_next_class' is deprecated (declared at 
/usr/local/include/objc/runtime-deprecated.h:41)
STObjCRuntime.m:292: error: dereferencing pointer to incomplete type
STObjCRuntime.m:294: error: dereferencing pointer to incomplete type
STObjCRuntime.m:297: error: dereferencing pointer to incomplete type
STObjCRuntime.m:299: error: dereferencing pointer to incomplete type
STObjCRuntime.m:301: error: dereferencing pointer to incomplete type
gmake[4]: *** [obj/StepTalk.obj/STObjCRuntime.m.o] Error 1
gmake[3]: *** [internal-framework-run-compile-submake] Error 2
gmake[2]: *** [StepTalk.all.framework.variables] Error 2
gmake[2]: Leaving directory `/home/ports/pobj/gnustep-
steptalk-0.11.0/StepTalk-0.11.0/Frameworks/StepTalk'
gmake[1]: *** [internal-all] Error 2
gmake[1]: Leaving directory `/home/ports/pobj/gnustep-
steptalk-0.11.0/StepTalk-0.11.0/Frameworks'
gmake: *** [internal-all] Error 2
*** Error code 2



and gdl2, taken from svn fails to compile this way:
Making all for library EOControl...
cc EODebug.m -c \
              -MMD -MP -DGNUSTEP_BASE_LIBRARY=1 -DGNU_RUNTIME=1 -g -DGNUSTEP -
DGNUSTEP_BASE_LIBRARY=1 -DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -
DGNUSTEP_BASE_LIBRARY=1 -fno-strict-aliasing -fPIC -DDEBUG -fno-omit-frame-
pointer -Wall -DGSWARN -DGSDIAGNOSE -Wno-import -O2 -pipe -g -fgnu-runtime -
fconstant-string-class=NSConstantString -I./. -I.. -I. -I/usr/local/include -
I/gnustep-dl2-0.13.0_writes_to_HOME/GNUstep/Library/Headers -
I/usr/local/include \
               -o obj/EOControl.obj/EODebug.m.o
EODebug.m: In function 'DumpIVar':
EODebug.m:329: error: dereferencing pointer to incomplete type
EODebug.m:330: error: dereferencing pointer to incomplete type
EODebug.m:331: error: dereferencing pointer to incomplete type
EODebug.m:333: error: dereferencing pointer to incomplete type
EODebug.m:338: error: dereferencing pointer to incomplete type
EODebug.m:338: error: dereferencing pointer to incomplete type
EODebug.m: In function 'EOFLogDumpObject_':
EODebug.m:373: error: dereferencing pointer to incomplete type
EODebug.m:380: error: dereferencing pointer to incomplete type
EODebug.m:382: error: dereferencing pointer to incomplete type
EODebug.m: In function 'EOFLogAssertGood_':
EODebug.m:401: error: 'struct objc_object' has no member named 'class_pointer'
EODebug.m:405: error: 'struct objc_object' has no member named 'class_pointer'
EODebug.m:408: error: 'struct objc_object' has no member named 'class_pointer'
gmake[4]: *** [obj/EOControl.obj/EODebug.m.o] Error 1
gmake[3]: *** [internal-library-all_] Error 2
gmake[2]: *** [EOControl.all.library.variables] Error 2
gmake[1]: *** [internal-all] Error 2
gmake[1]: Leaving directory `/home/ports/pobj/gnustep-dl2-0.13.0/gnustep-
dl2-0.13.0/EOControl'
gmake: *** [internal-all] Error 2
*** Error code 2

Stop in /home/ports/x11/gnustep/dl2 (line 2473 of 
/home/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /home/ports/x11/gnustep/dl2 (line 1690 of 
/home/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /home/ports/x11/gnustep/dl2 (line 2261 of 
/home/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /home/ports/x11/gnustep/dl2 (line 2241 of 
/home/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /home/ports/x11/gnustep/dl2 (line 1721 of 
/home/ports/infrastructure/mk/bsd.port.mk).
*** Error code 1

Stop in /home/ports/x11/gnustep/dl2 (line 2241 of 
/home/ports/infrastructure/mk/bsd.port.mk).
===> Exiting x11/gnustep/dl2 with an error
*** Error code 1

Stop in /home/ports/x11/gnustep (line 138 of 
/home/ports/infrastructure/mk/bsd.port.subdir.mk).



reply via email to

[Prev in Thread] Current Thread [Next in Thread]