I noticed I failed to mention which version I'm using. This is latest SVN of
the core module:

ivucica@theevilmacbook:~/Programs/gnustep/modules/core$ svn info | grep
Revision
Revision: 32865


On Fri, Apr 15, 2011 at 12:56, Ivan Vučica <[email protected]> wrote:

> Hi!
>
> I currently have GNUstep installed, but I don't think there's a conflict at
> the moment. I have GCC 4.4.5 installed, and clang 1.1.
>
> Here's what I'm doing. I am forcing use of clang as a compiler, I am
> telling GNUstep where to find the runtime (using beautiful trick that Jason
> Felice added to Zcode's configure) and I'm telling gnustep-base where to
> find libffi.
>
> cd gnustep/modules/core/make
>
> CFLAGS=-I`gcc -E - <<< '#include <objc/objc.h>' | grep objc/objc.h | sed -n
> -e '1{
>                s/^# [0-9]* "//
>                s/".*//
>                s/\/objc\/objc\.h//
>                p
>        }'` ./configure CC=clang
>
> make
> sudo make install
>
> cd ../base
>
> CFLAGS=-I`gcc -E - <<< '#include <objc/objc.h>' | grep objc/objc.h | sed -n
> -e '1{
>                s/^# [0-9]* "//
>                s/".*//
>                s/\/objc\/objc\.h//
>                p
>        }'` ./configure CC=clang
> --with-ffi-include=/usr/include/i486-linux-gnu
>
> make
>
>
> (I have hardcoded location of libffi.)
>
> This is where the thing falls apart:
>
> ivucica@theevilmacbook:~/Programs/gnustep/modules/core/base$ make
> This is gnustep-make 2.6.0. Type 'make print-gnustep-make-help' for help.
> Making all in Source ...
> Making all in ObjectiveC2 ...
> Making all for subproject ObjectiveC2...
>  Compiling file runtime.c ...
> In file included from runtime.c:34:
> /usr/lib/gcc/i486-linux-gnu/4.4.5/include/objc/objc.h:42:24: error:
>       redefinition of typedef 'BOOL' is invalid in C
> [-Wtypedef-redefinition]
> typedef unsigned char  BOOL;
>                        ^
> In file included from runtime.c:1:
> ../../Headers/ObjectiveC2/runtime.h:71:23: note: previous definition is
> here
> typedef unsigned char BOOL;
>                       ^
> 2 diagnostics generated.
> make[4]: *** [obj/ObjectiveC2.obj/runtime.c.o] Error 1
> make[3]: *** [internal-subproject-all_] Error 2
> make[2]: *** [ObjectiveC2.all.subproject.variables] Error 2
> make[1]: *** [internal-all] Error 2
> make: *** [internal-all] Error 2
>
>
> As you can see, GCC 4.4's runtime, which is required to compile base,
> conflicts with ObjectiveC2 subproject. (I presume objectivec2 is libobjc2?)
>
> It is required because, if I run with ./configure CC=clang, objc/objc.h
> cannot be found:
> ....
> ....
> checking the Objective-C runtime... GNU
> checking for custom shared objc library... NONE
> checking objc/runtime.h usability... no
> checking objc/runtime.h presence... no
> checking for objc/runtime.h... no
> checking objc/objc.h usability... no
> checking objc/objc.h presence... no
> checking for objc/objc.h... no
> Check to make sure you have a full installation of the GCC
> compiler that includes the Objective-C headers and libraries
> configure: error: Could not find Objective-C headers
>
> How do I get out of this dependency loop?
> --
> Ivan Vučica
> [email protected]
> Coming soon for iPhone, Zombie Ball - http://j.mp/zbivmail
>
>
>


-- 
Ivan Vučica
[email protected]
Coming soon for iPhone, Zombie Ball - http://j.mp/zbivmail
_______________________________________________
Discuss-gnustep mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to