Re: unexpected token main (mark space)

"jaccobacco" <[email protected]> Tue, 13 May 2003 04:40:37 -0000
Newsgroups gmane.comp.video.gimp.windows.devel
Message-ID <[email protected]>
Eep - I had a hw.c infront of the gcc command !  It's working now.  
Thanks anyway.

--- In [email protected], "jaccobacco" <peter_m@a...> wrote:
> Hi Mark,
> 
> I followed your instructions to Jigar exactly (I believe) - but 
when 
> I make the gtk hello world (hw.c) get...
> 
> hw.c gcc hw.c -o hw.exe -mms-bitfields `pkg-config --cflags --libs 
> gtk+-win32-2.
> 0`
> ./hw.c: line 3: syntax error near unexpected token `main('
> ./hw.c: line 3: `int main( int argc, char *argv[] )'
> make: *** [hw.exe] Error 2
> 
> Could you help me work out why?
> 
> Thanks for the help,
> 
> Peter.
> --- In [email protected], Mark Space <brenden@r...> wrote:
> > Jigar Suthar wrote:
> > 
> > >Yeah, I'm interested. Right now I'm trying to get my GTK SDK to 
> work 
> > >with MinGW. MinGW probably works, but I'm trying to make a basic 
> > >window that they have in their tutorial.
> > >  
> > >
> > Sure, your first two tasks are to install Msys and gvim. Msys I 
> assume 
> > you know about, install that first.  gvim is over at gvim.org, 
grab 
> the 
> > latest version from their download page and install.
> > 
> > Make sure you have paths set appropriately for both msys and 
gvim. 
> I 
> > think I only had to set msys's path.
> > 
> > Next you have to edit the gvim config file just a bit.  Don't 
worry 
> this 
> > is easy.  gvim normally installs a file in c:\vim\_vimrc where 
you 
> add 
> > config commands.  The defautl files are pretty bad.  Go into the 
> vim61 
> > (or which ever version number) and copy the files 
> > c:\vim\vim61\gvimrc_example.vim to c:\vim\_gvimrc , and 
> > c:\vim\vim61\vimrc_example.vim to c:\vim\_vimrc. Next all you 
need 
> to do 
> > is add these lines to the end of _vimrc:
> > 
> > set autowrite
> > set ignorecase
> > set ts=4 sw=4
> > set sh=sh
> > set shellpipe=>%s\ 2>&1
> > 
> > Save the file _vimrc, exit gvim, and then run gvim again by 
editing 
> the 
> > same file.  The :shell command should now use the bash shell you 
> > downloaded with msys, if you have the path set properly to 
contain 
> > c:\msys\1.0\bin (or where ever you installed msys). Test it 
> with 'ls' 
> > command, then 'exit'. You should also have syntax highlighting at 
> this 
> > point.
> > 
> > I should mention right now that gvim (and vi and vim) are kinda 
> hard to 
> > get used to if all you know are GUI IDEs.  But gvim works exactly 
> the 
> > same way on unix as it does under windows, which makes editing a 
> breeze 
> > for me because I only have to know one editor.  If you don't know 
> vi and 
> > related programs at all, you start in command mode. To edit, type 
> the 
> > 'i' key to enter instert mode. Press ESC to get back to command 
> mode.  
> > You can only use commands like :shell (type that exactly, 
including 
> the 
> > ':') in command mode.
> > 
> > Let's test just a bit more before starting out gtk.
> > 
> > I make new projects with explorer (the file browser).  I have a 
> \dev 
> > subdirectory on my desktop, so it's easy for me to start new 
> projects.  
> > I just double click that icon, then make a new subdirectory with 
> the 
> > file->new->folder command.  However you want, make a folder 
called 
> test, 
> > then under that folder another one called hw.  In hw, make two 
new 
> text 
> > files (this can be done with exploreer too, with the file->new-
> >text 
> > file command). Rename the first text file Makefile and the second 
> hw.c. 
> > (You will need to show file name extensions in order to not have 
> > filenames like Makfile.txt and hw.c.txt. Do this now if you don't 
> have 
> > it set already.)
> > 
> > Now edit Makefile by right clicking on it and selecting "Edit 
with 
> vim". 
> > Enter the following lines in Makefile:
> > 
> > hw.exe: hw.o
> >     gcc -o hw.exe hw.o
> > 
> > The space in front of the gcc command is important. 
> (Makefile "scripts" 
> > are sensitive to indentation.)  Now go to exploreer again and 
right 
> > click on the hw.c file, choose "Edit with existing vim - 
Makefile"  
> It's 
> > important to use the same gvim for each project, or it gets 
> complicated 
> > trying to juggle many seperate open files. gvim will juggle for 
you 
> if 
> > you use the same gvim instance for all your files.  Type the 
> following 
> > lines into hw.c:
> > 
> > #include <stdio.h>
> > 
> > main()
> > {
> >     printf( "Hello World!\n" );
> > }
> > 
> > Try now using the Buffer menu to switch back and forth between 
> Makefile 
> > and hw.c. Notice they are both still loaded.  Now compile your 
> program 
> > by typing :make in command mode (press ESC first). gvim will 
> > automatically save all modified buffers to disk, and run make in 
a 
> bash 
> > shell.  If it finds any errors, gvim will display the first one 
and 
> move 
> > your cursor to the offending line.  You can go to the next error 
> with 
> > the :cn command, and you can go back to the previous error with 
> the :cp 
> > command.  If you want to see all of your errors in a window, 
> use :cw  
> > This is best done with a full screen mode gvim (just full screen 
> the 
> > window) and maybe the Window->split command so you can see error 
> and a 
> > couple different files at the same time.  Make sure you have both 
> hw.o 
> > and hw.exe in your subdirectory, run hw.exe by double clicking on 
> it.  
> > If you don't have hw.exe, you may have got linker errors. These 
> gvim 
> > can't help you fix, so you have to use :cw to see them and figure 
> out 
> > what went wrong.  If everything goes with out a hitch, introduce 
> some 
> > syntax errors into hw.c so you can play around with finding and 
> fixing 
> > errors in gvim.  Use the WIndows->split command and practice 
> resizing 
> > the buffers (just grab the black bar with the mouse and move it 
up 
> or 
> > down), viewing your Makefile and hw.c at the same time, and 
> building in 
> > this mode too (building = type :make).
> > 
> > Now that you are just about a gvim expert you are ready for some 
> gtk. 
> > Quit this gvim completely before going on to gtk.
> > 
> > Back to the \dev directory, I made a \dev\gtk directory, then put 
> the 
> > tutorial files into gtk\test\hw and gtk\test\hw2. Make the hw 
> subdir 
> > first and put two new text files therein, just like before, named 
> > Makefile and hw.c.  Right click on the new Makefile and 
> choose "Edit 
> > with vim" to start fresh.  The makefile from the first gtk 
example 
> > almost works but needs a bit of changing for win32.  Here's what 
I 
> used:
> > 
> > hw.exe: hw.c
> >     gcc hw.c -o hw.exe -mms-bitfields `pkg-config --cflags --libs 
> > gtk+-1.3-win32-production`
> > 
> > The only changes are the flag -mms-bitfields and the different 
> config 
> > package.  Next right click on the new hw.c file and choose "Edit 
> with 
> > existing vim - Makefile" as before.  Use the first example from 
the 
> gtk 
> > verbatium:
> > 
> > #include <gtk/gtk.h>
> > 
> > int main( int   argc,
> >           char *argv[] )
> > {
> >     GtkWidget *window;
> >    
> >     gtk_init (&argc, &argv);
> >    
> >     window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
> >     gtk_widget_show  (window);
> >    
> >     gtk_main ();
> >    
> >     return(0);
> > }
> > 
> > This should now compile without a hitch.  If you get any errors, 
> use :cw 
> > in command mode to list them as before, and debug as normal.
> > 
> > That's all for now! My finders are tired.  Your best source for 
> info on 
> > gvim is the givm.org home page, check out their "tips" section.  
> The gnu 
> > programs are well documented on gnu.org.  Don't forget that if 
gvim 
> gets 
> > too confusing you can also try to build the exact same files you 
> have 
> > created by making a shell and comipling from there - just click 
on 
> the 
> > Msys icon, cd "subdir" to go to the correct folder, and 
type "make" 
> in 
> > the correct subdir to build a project which has a Makefile.
> > 
> > TTFN!


------------------------ Yahoo! Groups Sponsor ---------------------~-->
Rent DVDs from home.
Over 14,500 titles. Free Shipping
& No Late Fees. Try Netflix for FREE!
http://us.click.yahoo.com/BVVfoB/hP.FAA/uetFAA/NhFolB/TM
---------------------------------------------------------------------~->

To Post a message, send it to: [email protected]
To Unsubscribe, send a blank message to: [email protected] 

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/