Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Mac > Mac Programmer Help > Re: Cocoa Newbi...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 3 of 43 Topic 3769 of 3882
Post > Topic >>

Re: Cocoa Newbie Question.

by Reinder Verlinde <reinder@[EMAIL PROTECTED] > Jun 11, 2008 at 11:14 PM

In article 
<fe79dd66-0263-429a-b443-a7a28ef083eb@[EMAIL PROTECTED]
>,
 piscesboy <oraclmaster@[EMAIL PROTECTED]
> wrote:

> On Jun 11, 1:51 pm, piscesboy <oraclmas...@[EMAIL PROTECTED]
> wrote:
> > This is my first time compiling objective C and C files together for
> > one program. All of my files are C files except the main file which is
> > in objective C called main.m
> >
> > Here is the code for my boilerplate main implementation file file:
> >
> > #im****t <Cocoa/Cocoa.h>
> > #include "defs.h"
> > #include "data.h"
> > #include "treenode.h"
> > #include "fileinout.h"
> >
> > int main(int argc, const char* argv[]){
> >
> >         return 0;
> >
> > }
> >
> > All the other .h files in my #includes are C files containing my
> > functions.
> >
> > Here is the error I get when I compile:
> >
> > gcc -Wno-im****t -ansi -pedantic -Wall -O2 -c treenode.c
> > gcc -Wno-im****t -ansi -pedantic -Wall -O2 -c main.m

This is not the cause of your error, but -Wno-im****t very, very likely 
is not something that you will want to compile .m files with. At the 
least, that would get rid of the warning

> > main.m:1:2: warning: #im****t is a GCC extension

I also guess that you are not using Xcode. Reason is that, on my system 
(10.5.3), Xcode compiles a simple main.m as

CompileC /[...]/main.o /[...]/main.m normal ppc objective-c 
com.apple.compilers.gcc.4_0

which eventually calls gcc passing a few zillion flags, including

    -fpascal-strings
    -x objective-c
    -arch i386

If you are not using Xcode, start doing that, if only to check what 
command lines it produces.

> > In file included from /System/Library/Frameworks/AppKit.framework/
> > Headers/AppKit.h:53,
> >                  from /System/Library/Frameworks/Cocoa.framework/
> > Headers/Cocoa.h:13,
> >                  from main.m:1:
> > /System/Library/Frameworks/AppKit.framework/Headers/NSEvent.h:72:
> > error: syntax error before 'unsigned'
> > make: *** [main.o] Error 1
> >
> > This is a fairly cryptic error for me but it appears to be associated
> > with the file #im****t 'ed from the Cocoa framework. What is going on
> > here?
> >
> > I am an absolute beginner in using Objective C and I just want to
> > learn to get this to compile for now.

I guess that you are not telling the compiler that it is compiling 
Objective-C code. Hence, it interprets Cocoa/Cocoa.h as a C header, 
which in turn leads to your error message because some line in that 
header is not legal C. Producing good error messages for C code, and 
even more so for C++ code, in incredibly hard, and often impossible. The 
actual reason for the error could be any earlier line.

> New development: I tracked down and looked at the file NSEvent.h and
> looked at line 72 and found this:
> 
> 
> static inline unsigned int NSEventMaskFromType(NSEventType type)
> { return (1 << type); }
> 
> gcc says there is a syntax error before "unsigned".

See my remark about producing good error messages for C/C++.

> This appears to be the offending line of code for when I include
> anything else it compiles fine. My worry now is that NSEvent.h is
> busted and as I am a newbie I don't want to touch the code. I just
> want to get it to work.
> 
> I never touched NSEvent.h in my life. What is going on here?

On my system (10.5.3, with XCode 3.0), that line reads:

NS_INLINE NSUInteger NSEventMaskFromType(NSEventType type) { return (1 
<< type); }

I guess your "tracking down" included preprocessing the code. If so, 
this is nothing to worry about. If not, can you check the actual file?

If this does not help, start compiling a main.m that only contains 
"im****t <Cocoa/Cocoa.h>". If that succeeds, the problem likely is with 
some of your own files or with the commands you issue to compile your 
code.

Reinder
 




 43 Posts in Topic:
Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-11 10:51:10 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-11 11:17:42 
Re: Cocoa Newbie Question.
Reinder Verlinde <rein  2008-06-11 23:14:31 
Re: Cocoa Newbie Question.
Dave Seaman <dseaman@[  2008-06-11 22:37:00 
Re: Cocoa Newbie Question.
le chiffre <oraclmaste  2008-06-12 23:41:20 
Re: Cocoa Newbie Question.
Gregory Weston <uce@[E  2008-06-13 10:54:13 
Re: Cocoa Newbie Question.
Jim <jim@[EMAIL PROTEC  2008-06-13 16:04:43 
Re: Cocoa Newbie Question.
Ben Artin <macdev@[EMA  2008-06-13 08:14:16 
Re: Cocoa Newbie Question.
Jim <jim@[EMAIL PROTEC  2008-06-13 16:31:50 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-12 23:55:45 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-11 15:35:52 
Re: Cocoa Newbie Question.
Ben Artin <macdev@[EMA  2008-06-11 15:49:53 
Re: Cocoa Newbie Question.
Dave Seaman <dseaman@[  2008-06-12 00:58:51 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-11 19:05:58 
Re: Cocoa Newbie Question.
Dave Seaman <dseaman@[  2008-06-12 02:18:43 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-11 22:00:09 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-11 22:05:19 
Re: Cocoa Newbie Question.
Dave Seaman <dseaman@[  2008-06-12 12:24:39 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-11 22:08:58 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-12 09:07:43 
Re: Cocoa Newbie Question.
Dave Seaman <dseaman@[  2008-06-12 16:32:15 
Re: Cocoa Newbie Question.
Gregory Weston <uce@[E  2008-06-12 13:11:55 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-12 09:52:06 
Re: Cocoa Newbie Question.
Gregory Weston <uce@[E  2008-06-12 13:19:58 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-12 10:31:23 
Re: Cocoa Newbie Question.
Gregory Weston <uce@[E  2008-06-12 15:06:29 
Re: Cocoa Newbie Question.
Chris Hanson <cmh@[EMA  2008-06-15 16:35:00 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-12 10:34:23 
Re: Cocoa Newbie Question.
Gregory Weston <uce@[E  2008-06-12 15:14:39 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-12 12:31:08 
Re: Cocoa Newbie Question.
Gregory Weston <uce@[E  2008-06-12 16:30:16 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-12 13:50:06 
Re: Cocoa Newbie Question.
jim@[EMAIL PROTECTED] (j  2008-06-13 06:15:18 
Re: Cocoa Newbie Question.
Gregory Weston <uce@[E  2008-06-13 10:52:57 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-13 11:08:59 
Re: Cocoa Newbie Question.
piscesboy <oraclmaster  2008-06-15 16:58:27 
Re: Cocoa Newbie Question.
jim@[EMAIL PROTECTED] (j  2008-06-16 08:33:05 
Re: Cocoa Newbie Question.
Gregory Weston <uce@[E  2008-06-16 08:58:21 
Re: Cocoa Newbie Question.
jim@[EMAIL PROTECTED] (j  2008-06-16 15:23:01 
Re: Cocoa Newbie Question.
glenn andreas <gandrea  2008-06-16 13:56:37 
Re: Cocoa Newbie Question.
Steven Fisher <sdfishe  2008-06-20 13:42:49 
Re: Cocoa Newbie Question.
Steven Fisher <sdfishe  2008-06-20 13:48:07 
Re: Cocoa Newbie Question.
"P. Sture" <  2008-06-22 11:24:00 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Dec 5 11:26:49 CST 2008.