help-gnustep
[Top][All Lists]
Advanced

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

Re: With gcc & with Eclipse


From: Anne van Rossum
Subject: Re: With gcc & with Eclipse
Date: Thu, 14 Dec 2006 10:13:06 +0100

Dear members,

For anyone who want to run Objective-C code and to use Eclipse I
recommend the following approach:
- Create sample.m file and GNUmakefile in ObjCProjectExample
- run $GNUstep root/System/Library/Makefiles/GNUstep.sh
- make (that should go fine)
- start eclipse from same console (building/running should go fine)
- add new C project and import directory structure (from
ObjCProjectExample)
- at Project - Properties - C/C++ Make Project - [tab] Environment push
button Select
- select all environment variables with GNUstep in their names
- apply changes

(Re)Starting Eclipse from whatever location should be fine now. The
GNUstep.sh shell script is no longer needed.

Kind regards,

Anne

On Thu, 2006-12-14 at 09:51 +0100, Anne van Rossum wrote:
> Dear members, Tima,
> 
> Currently I have it running. I just start Eclipse from the command line
> after I have run the GNUstep.sh script in that console. It works nice.
> At the time I figure out all environment variables I will be old and
> doing witchcraft. :-) Thanks.
> 
> Kind regards,
> 
> Anne
> 
> On Thu, 2006-12-14 at 09:42 +0100, Anne van Rossum wrote:
> > Hi Tima,
> > 
> > Thanks for your response.
> > 
> > Sorry for eventual misunderstandings. In the console I can type "make"
> > at which time the GNUmakefile is used and the appropriate environment
> > (and other?) variables, and the thing compiles okay.
> > 
> > However, using a "gcc ..." command from the command line, I couldn't
> > make it work.
> > 
> > And more important, I have to set the appropriate environment variables,
> > etc. in Eclipse that can be coupled to the gcc compiler. For that I set
> > all the kind of stuff done in GNUstep.sh (that I have sourced indeed),
> > like the $GNUSTEP_..., $GNUSTEP_FLATTENED, $PATH, $CLASSPATH, $GUILE...,
> > just by copying the values from "env".
> > 
> > And yes I have the /System/Library/Headers/Foundation files. I hope you
> > can help me. I don't know exactly what is going on behind the scenes of
> > the shell scripts and GNUmakefile.
> > 
> > Kind regards,
> > 
> > Anne
> > 
> > On Wed, 2006-12-13 at 19:49 -0800, Tima Vaisburd wrote:
> > > Hi,
> > > 
> > > I just tested your example, it compiles and runs cleanly for me.
> > > That is, nothing wrong with the source.m and GNUmakefile,
> > > it's your installation.
> > > 
> > > How did you install? Have you source'd
> > >  <your GNUstep root>/System/Library/Makefiles/GNUstep.sh ?
> > > 
> > > There should be file
> > > 
> > >   <your GNUstep root>/System/Library/Headers/Foundation/Foundation.h
> > > 
> > > do you have it?
> > > 
> > > --Tima
> > > 
> > > On Wednesday 13 December 2006 08:27, Anne van Rossum wrote:
> > > > Dear list members,
> > > >
> > > > Currently I'm starting to explore the Objective-C world. I figured out
> > > > to begin with GNUstep. The file I use is "source.m":
> > > >
> > > > #import <Foundation/Foundation.h>
> > > > int main (void)
> > > > {
> > > >   NSLog (@"Executing: Hello World!!!");
> > > >   return 0;
> > > > }
> > > > ____________________________________________
> > > > I'm currently able to type make using this GNUmakefile:
> > > >
> > > > include $(GNUSTEP_MAKEFILES)/common.make
> > > > TOOL_NAME = LogTest
> > > > LogTest_OBJC_FILES = source.m
> > > > include $(GNUSTEP_MAKEFILES)/tool.make
> > > > ____________________________________________
> > > > However, I can't make it work using gcc:
> > > >
> > > > source.m:1:34: error: Foundation/Foundation.h: No such file or directory
> > > > source.m: In function ‘main’:
> > > > source.m:5: error: cannot find interface declaration for
> > > > ‘NXConstantString’
> > > > ____________________________________________
> > > > And more important, but maybe in some way related, I want to run the
> > > > project in Eclipse, CDT. However, the console output is in this case:
> > > >
> > > > make all
> > > > Making all for tool LogTest...
> > > >  Linking tool LogTest ...
> > > > /usr/lib/GNUstep/System/Library/Libraries/libgnustep-base_s.a(objc-load.o):
> > > > In function `objc_get_symbol_path': (.text+0x1ef): undefined reference 
> > > > to
> > > > `dlsym'
> > > > /usr/lib/GNUstep/System/Library/Libraries/libgnustep-base_s.a(objc-load.o):
> > > > In function `objc_get_symbol_path': (.text+0x20b): undefined reference 
> > > > to
> > > > `dladdr'
> > > > ...
> > > > ...
> > > > ...
> > > > collect2: ld returned 1 exit status
> > > > make[1]: *** [static_obj/LogTest] Error 1
> > > > make: *** [LogTest.all.tool.variables] Error 2
> > > >
> > > > ____________________________________________
> > > > I already tried to play with Environment variables within the Project
> > > > properties, but am not sure what is needed, and what not. And it seemed
> > > > like I copied every GNUSTEP_... env variable. I downloaded the stuff
> > > > using aptitude search gnustep, and have the libdl.so, libdl.a files
> > > > in /usr/lib.
> > > > ____________________________________________
> > > > I use GNU Make 3.81, gcc 4.1.2 20060928 (prerelease) (Ubuntu
> > > > 4.1.1-13ubuntu5), Ubuntu Edgy Eft
> > > >
> > > > ____________________________________________
> > > > I hope someone can help me figure out the settings in Eclipse. I want to
> > > > run it from there.
> > > >
> > > > Thanks a lot in advance.
> > > >
> > > > Kind regards,
> > > >
> > > > Anne
> > > >
> > > >
> > > >
> > > > _______________________________________________
> > > > Help-gnustep mailing list
> > > > Help-gnustep@gnu.org
> > > > http://lists.gnu.org/mailman/listinfo/help-gnustep
> > 
> > 
> > 
> > _______________________________________________
> > Help-gnustep mailing list
> > Help-gnustep@gnu.org
> > http://lists.gnu.org/mailman/listinfo/help-gnustep
> 
> 
> 
> _______________________________________________
> Help-gnustep mailing list
> Help-gnustep@gnu.org
> http://lists.gnu.org/mailman/listinfo/help-gnustep





reply via email to

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