Hi Quentin,

thanks for responding!

>> since
>>
>>      cd /usr/src/Etoile
>>      make
>>
>> did not work on my Solaris box, I went into the subdirs
>>
>>      cd /usr/src/Etoile/Frameworks/EtoileFoundation/EtoileThread
>>      make
>>
>> -bash-3.00# make
>> /bin/sh: syntax error at line 1: `end of file' unexpected
>> make: *** [before-all] Error 2
>
> Do you get this error only with Étoilé projects and not other projects
> which are also built with gnustep-make?

I could built Affiche, Terminal and TextEdit without problems!

>> Build Project: EtoileThread
>>
>> [snip]
>> method
>> ETThread.m:102: warning: local declaration of `thread' hides instance
>> variable
>> make[1]: *** [obj/ETThread.m.o] Error 1
>> make: *** [EtoileThread.all.framework.variables] Error 2
>>
>> This still leaves me clueless. Help is appreciated!
>
> Looks like the problem is that ivars are exposed in the scope of class
> methods as explained here:  
> http://gcc.gnu.org/ml/gcc-patches/2004-10/msg02552.html
> Changing line 87 of ETThread.m to use another local variable name
> should fix the problem. For example:
>       ETThread *newThread = [[ETThread alloc] init];

I have done that. It stops in ETThreadedObject now.

gcc ETThreadedObject.m -c \
       -MMD -MP -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1 -DGNU_GUI_LIBRARY=1  
-DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -fpic -fPIC -g -Wall -DDEBUG  
-fno-omit-frame-pointer -DGSWARN -DGSDIAGNOSE -Wno-import -g  
-fno-strict-aliasing -fgnu-runtime -Wno-import -Werror -Wno-unused  
-Wno-implicit -Wno-import -Werror -Wno-unused -Wno-implicit -std=c99  
-fconstant-string-class=NSConstantString -I/usr/share/src/Etoile/Build  
-I/usr/share/src/Etoile/Frameworks/EtoileFoundation/EtoileThread  
-I/usr/share/src/Etoile/Frameworks/EtoileFoundation/EtoileThread/ 
Headers -I/usr/share/src/Etoile/Build  
-I/usr/share/src/Etoile/Frameworks/EtoileFoundation/EtoileThread  
-I/usr/share/src/Etoile/Frameworks/EtoileFoundation/EtoileThread/ 
Headers -I./derived_src -I. -I//GNUstep/Library/Headers  
-I/opt/GNUstep/Local/Library/Headers  
-I/opt/GNUstep/System/Library/Headers \
        -o obj/ETThreadedObject.m.o
ETThreadedObject.m:44:2: #warning Potentially unsafe memory operations  
being used
make[1]: *** [obj/ETThreadedObject.m.o] Error 1
make: *** [EtoileThread.all.framework.variables] Error 2

> I still don't understand why we don't get this warning on other
> platforms… What's your GCC version?

-bash-3.00# gcc --version
gcc (GCC) 3.4.4
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is  
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR  
PURPOSE.

I built the above with "make messages=yes". I just don't understand why  
"make" always gives me

/bin/sh: syntax error at line 1: `end of file' unexpected
make: *** [before-all] Error 2

in the Etoile code tree? Should I upgrade to another gcc?

Thanks,

   Andreas


_______________________________________________
Etoile-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-discuss

Répondre à