gnustep-dev
[Top][All Lists]
Advanced

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

Re: Problem with compile


From: Jackie Gleason
Subject: Re: Problem with compile
Date: Sun, 25 Sep 2011 13:03:35 -0400

Sorry, I was trying not to send the whole code, probably should have included that. 

Anyway still looking for an answer, I believe it has something to do with the way I am compiling from source since I don't see a Libraries folder under /usr/GnuStep


#include <stdio.h>
#import <Foundation/Foundation.h>

/* 
 * The next #include line is generally present in all Objective-C
 * source files that use GNUstep.  The Foundation.h header file
 * includes all the other standard header files you need.
 */

/*
 * Declare the Test class that implements the class method (classStringValue).
 */
@interface Test
+ (const char *) classStringValue;
@end

/*
 * Define the Test class and the class method (classStringValue).
 */
@implementation Test
+ (const char *) classStringValue;
{
  return "This is the string value of the Test class";
}
@end

/*
 * The main() function: pass a message to the Test class
 * and print the returned string.
 */
int main(void)
{
  NSString* s = @"Hello, world!";
  NSLog(s);
  //printf("%s\n", [Test classStringValue]);
  return 0;

Same issue is still happening

On Sun, Sep 25, 2011 at 12:51 PM, Eric Wasylishen <address@hidden> wrote:
Hey,
To use NSLog, NSString, and even constant strings (@""), you need to import the GNUstep base headers.
Adding:

#import <Foundation/Foundation.h>

to the top of your source.m file should fix the problem. :-)
Eric

On 2011-09-24, at 10:56 AM, Jackie Gleason wrote:

> I am trying to compile the following code
> Environment: Ubuntu 11.04 x64
>
> int main(void)
> {
>
>   NSString* s = @"Hello, world!";
>   NSLog(s);
>   //printf("%s\n", [Test classStringValue]);
>   return 0;
> }
>
> I install and Compile GNUstep by checking out the anonymous core, then compiling in the order make, base, gui, back. I compile all of them using the following command (under sudo shell)..
>
> ./configure --prefix=/usr/GnuStep
> make
> make install
>
> After make I run the following...
> . /usr/GnuStep/share/GNUstep/Makefiles/GNUstep.sh
>
> Finally I create the following GNUMakeFile...
>
> include $(GNUSTEP_MAKEFILES)/common.make
>
> TOOL_NAME = LogTest
> LogTest_OBJC_FILES = source.m
>
> include $(GNUSTEP_MAKEFILES)/tool.make
>
> But when I try running I get the following message...
> ~/Development/Code/personal/GnuStep/helloWorld$ make
> This is gnustep-make 2.6.1. Type 'make print-gnustep-make-help' for help.
> Making all for tool LogTest...
>  Compiling file source.m ...
> source.m: In function ‘main’:
> source.m:36:3: error: cannot find interface declaration for ‘NXConstantString’
> make[3]: *** [obj/LogTest.obj/source.m.o] Error 1
> make[2]: *** [internal-tool-all_] Error 2
> make[1]: *** [LogTest.all.tool.variables] Error 2
> make: *** [internal-all] Error 2
>
> the ls for the folder is...
> :/usr/GnuStep# ls
> bin  share
>
> Any help would be very appreciated.
> _______________________________________________
> Gnustep-dev mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/gnustep-dev



reply via email to

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