On 14 Dec 2007, at 17:37, Daniel wrote:
> When I click on the compiled binary it appears a shell first which  
> executes the programm then. This happens with MacOS 10.5. On 10.4  
> you cant even start the programm by clicking on the binary, you  
> need to run it from the shell.
> Im very new to the Mac stuff. So I think I'm just missing an  
> important step.
>
> This is my whole link line:
>
> g++ -o butt FLTK/Fl_ILM216.o FLTK/fl_callbacks.o FLTK/fl_funcs.o  
> FLTK/flgui.o butt.o cfg.o icecast.o lame_encode.o parseconfig.o  
> port_audio.o shoutcast.o timer.o vorbis_encode.o -L/opt/local/lib - 
> lfltk /usr/local/lib/libportaudio.a /opt/local/lib/libshout.a /opt/ 
> local/lib/libvorbisenc.a /opt/local/lib/libvorbis.a /opt/local/lib/ 
> libogg.a /opt/local/lib/libtheora.a /opt/local/lib/libspeex.a /opt/ 
> local/lib/libmp3lame.a -framework CoreAudio -framework AudioToolbox  
> -framework AudioUnit -framework CoreServices  -framework Carbon - 
> framework ApplicationServices

OK, this is a Mac oddity. To make your program able to be "clicked"  
on properly, you need to tell OSX that it is a GUI program. In pre- 
OSX Macs this was done via meta-data in a resource fork. In OSX you  
either need to attach a resource fork (in the old fashioned but now  
deprecated way) or put your application into an app bundle (the  
preferred OSX way.)

To "bundle" your app, use Greg's script from here:

     http://www.seriss.com/people/erco/fltk/#MacBundle

Or perhaps my bundle maker cli app:

     http://www.imm.uklinux.net/fltk/flbundle.tgz


However, for simple tests, it is usually quicker to just attach a  
basic res fork and go with that. The easiest way to get a working res  
fork with fltk is to use fltk-config (or fltk2-config) like this:

     fltk-config --post my_app

Do that as the last step in your build process and all should be  
well. Probably.




_______________________________________________
fltk mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk

Reply via email to