Jane wrote: > fltk 1.1.9 builds for me using the gcc-4.0 compiler that comes with SL. :) > i have used: > > ~/src/fltk-1.1.9$ ./configure CC=/Developer/usr/bin/gcc-4.0 > CXX=/Developer/usr/bin/g++-4.0 CFLAGS="-arch i386 -arch ppc > -mmacosx-version-min=10.4 -O3" CXXFLAGS="-arch i386 -arch ppc > -mmacosx-version-min=10.4 -O3" --enable-threads --enable-localjpeg > --enable-localzlib --enable-localpng --enable-quartz --enable-gl=no
Wow, that worked for me with fltk-1.3.x even on Snow Leopard. Nice! Executables seem to run OK; I tried the editor demon. So at least Snow Leopard + FLTK can build 32bit intel apps with the above. Anyway, here's the complete output from Jane's config shown above, just for the record. Note at the end where I run 'file test/editor' it shows it built an i386-only binary, not a universal ppc/intel bin (even though the above flags specify both) I think what's missing is an LDFLAGS setting with similar "-arch i386 -arch ppc" settings to get true universal bins. Here's the build of fltk-1.3.x on Snow Leopard with Jane's config: ----------------------------------------------------------------------------- % sw_vers ProductName: Mac OS X ProductVersion: 10.6 BuildVersion: 10A432 % make distclean === cleaning jpeg === === cleaning zlib === === cleaning png === === cleaning src === === cleaning fluid === === cleaning test === === cleaning documentation === % ./configure CC=/Developer/usr/bin/gcc-4.0 CXX=/Developer/usr/bin/g++-4.0 CFLAGS="-arch i386 -arch ppc -mmacosx-version-min=10.4 -O3" CXXFLAGS="-arch i386 -arch ppc -mmacosx-version-min=10.4 -O3" --enable-threads --enable-localjpeg --enable-localzlib --enable-localpng --enable-quartz --enable-gl=no checking for gcc... /Developer/usr/bin/gcc-4.0 checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether /Developer/usr/bin/gcc-4.0 accepts -g... yes checking for /Developer/usr/bin/gcc-4.0 option to accept ISO C89... none needed checking whether we are using the GNU C++ compiler... yes checking whether /Developer/usr/bin/g++-4.0 accepts -g... yes checking for a BSD-compatible install... /usr/bin/install -c checking for nroff... /usr/bin/nroff checking for htmldoc... no checking for doxygen... no checking for ranlib... ranlib checking for ar... /usr/bin/ar checking how to run the C preprocessor... /Developer/usr/bin/gcc-4.0 -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking whether byte ordering is bigendian... no checking for short... yes checking size of short... 2 checking for int... yes checking size of int... 4 checking for long... yes checking size of long... 4 checking whether the compiler recognizes bool as a built-in type... yes checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking sys/stdtypes.h usability... no checking sys/stdtypes.h presence... no checking for sys/stdtypes.h... no checking for scandir... yes checking whether we have the POSIX compatible scandir() prototype... no checking for vsnprintf... yes checking for snprintf... yes checking for strings.h... (cached) yes checking for strcasecmp... yes checking for strlcat... yes checking for strlcpy... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking for localeconv... yes checking for library containing pow... none required checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for long long int... yes checking for strtoll... yes checking for library containing dlsym... none required checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking for pthread_create using -lpthreads... no checking for pthread_create using -lpthread... yes checking if GCC supports -fno-exceptions... yes checking if GCC supports -fno-strict-aliasing... yes Configuration Summary ------------------------------------------------------------------------- Directories: prefix=/usr/local bindir=${exec_prefix}/bin datadir=${datarootdir} datarootdir=${prefix}/share exec_prefix=${prefix} includedir=${prefix}/include libdir=${exec_prefix}/lib mandir=${datarootdir}/man Graphics: Quartz Image Libraries: JPEG=Builtin PNG=Builtin ZLIB=Builtin Large Files: YES OpenGL: NO Threads: YES configure: creating ./config.status config.status: creating makeinclude config.status: creating fltk.list config.status: creating fltk-config config.status: creating fltk.spec config.status: creating FL/Makefile config.status: creating config.h % make === making jpeg === Compiling jmemnobs.c... Compiling jcapimin.c... Compiling jcapistd.c... Compiling jccoefct.c... Compiling jccolor.c... Compiling jcdctmgr.c... Compiling jchuff.c... Compiling jcinit.c... Compiling jcmainct.c... Compiling jcmarker.c... Compiling jcmaster.c... Compiling jcomapi.c... Compiling jcparam.c... Compiling jcphuff.c... Compiling jcprepct.c... Compiling jcsample.c... Compiling jctrans.c... Compiling jdapimin.c... Compiling jdapistd.c... Compiling jdatadst.c... Compiling jdatasrc.c... Compiling jdcoefct.c... Compiling jdcolor.c... Compiling jddctmgr.c... Compiling jdhuff.c... Compiling jdinput.c... Compiling jdmainct.c... Compiling jdmarker.c... Compiling jdmaster.c... Compiling jdmerge.c... Compiling jdphuff.c... Compiling jdpostct.c... Compiling jdsample.c... Compiling jdtrans.c... Compiling jerror.c... Compiling jfdctflt.c... Compiling jfdctfst.c... Compiling jfdctint.c... Compiling jidctflt.c... Compiling jidctfst.c... Compiling jidctint.c... Compiling jidctred.c... Compiling jquant1.c... Compiling jquant2.c... Compiling jutils.c... Compiling jmemmgr.c... Archiving ../lib/libfltk_jpeg.a... === making zlib === Compiling adler32.c... Compiling compress.c... Compiling crc32.c... Compiling gzio.c... Compiling uncompr.c... Compiling deflate.c... Compiling trees.c... Compiling zutil.c... Compiling inflate.c... Compiling inftrees.c... Compiling inffast.c... Archiving ../lib/libfltk_z.a... === making png === Compiling png.c... Compiling pngset.c... Compiling pngget.c... Compiling pngrutil.c... Compiling pngtrans.c... Compiling pngwutil.c... Compiling pngread.c... Compiling pngrio.c... Compiling pngwio.c... Compiling pngwrite.c... Compiling pngrtran.c... Compiling pngwtran.c... Compiling pngmem.c... Compiling pngerror.c... Compiling pngpread.c... Archiving ../lib/libfltk_png.a... === making src === Compiling Fl.cxx... Compiling Fl_Adjuster.cxx... Compiling Fl_Bitmap.cxx... Compiling Fl_Browser.cxx... Compiling Fl_Browser_.cxx... Compiling Fl_Browser_load.cxx... Compiling Fl_Box.cxx... Compiling Fl_Button.cxx... Compiling Fl_Chart.cxx... Compiling Fl_Check_Browser.cxx... Compiling Fl_Check_Button.cxx... Compiling Fl_Choice.cxx... Compiling Fl_Clock.cxx... Compiling Fl_Color_Chooser.cxx... Fl_Color_Chooser.cxx: In function 'void generate_image(void*, int, int, int, uchar*)': Fl_Color_Chooser.cxx:263: warning: 'r' may be used uninitialized in this function Fl_Color_Chooser.cxx:263: warning: 'b' may be used uninitialized in this function Fl_Color_Chooser.cxx:263: warning: 'g' may be used uninitialized in this function Fl_Color_Chooser.cxx: In function 'void generate_image(void*, int, int, int, uchar*)': Fl_Color_Chooser.cxx:263: warning: 'r' may be used uninitialized in this function Fl_Color_Chooser.cxx:263: warning: 'b' may be used uninitialized in this function Fl_Color_Chooser.cxx:263: warning: 'g' may be used uninitialized in this function Compiling Fl_Counter.cxx... Compiling Fl_Dial.cxx... Compiling Fl_Double_Window.cxx... Compiling Fl_File_Browser.cxx... Compiling Fl_File_Chooser.cxx... Compiling Fl_File_Chooser2.cxx... Compiling Fl_File_Icon.cxx... Compiling Fl_File_Input.cxx... Compiling Fl_Group.cxx... Compiling Fl_Help_View.cxx... Compiling Fl_Image.cxx... Compiling Fl_Input.cxx... Compiling Fl_Input_.cxx... Compiling Fl_Light_Button.cxx... Compiling Fl_Menu.cxx... Compiling Fl_Menu_.cxx... Compiling Fl_Menu_Bar.cxx... Compiling Fl_Sys_Menu_Bar.cxx... Compiling Fl_Menu_Button.cxx... Compiling Fl_Menu_Window.cxx... Compiling Fl_Menu_add.cxx... Compiling Fl_Menu_global.cxx... Compiling Fl_Multi_Label.cxx... Compiling Fl_Overlay_Window.cxx... Compiling Fl_Pack.cxx... Compiling Fl_Pixmap.cxx... Compiling Fl_Positioner.cxx... Compiling Fl_Preferences.cxx... Compiling Fl_Progress.cxx... Compiling Fl_Repeat_Button.cxx... Compiling Fl_Return_Button.cxx... Compiling Fl_Roller.cxx... Compiling Fl_Round_Button.cxx... Compiling Fl_Scroll.cxx... Compiling Fl_Scrollbar.cxx... Compiling Fl_Shared_Image.cxx... Compiling Fl_Single_Window.cxx... Compiling Fl_Slider.cxx... Compiling Fl_Tabs.cxx... Compiling Fl_Text_Buffer.cxx... Compiling Fl_Text_Display.cxx... Compiling Fl_Text_Editor.cxx... Compiling Fl_Tile.cxx... Compiling Fl_Tiled_Image.cxx... Compiling Fl_Tooltip.cxx... Compiling Fl_Valuator.cxx... Compiling Fl_Value_Input.cxx... Compiling Fl_Value_Output.cxx... Compiling Fl_Value_Slider.cxx... Compiling Fl_Widget.cxx... Compiling Fl_Window.cxx... Compiling Fl_Window_fullscreen.cxx... Compiling Fl_Window_hotspot.cxx... Compiling Fl_Window_iconize.cxx... Compiling Fl_Wizard.cxx... Compiling Fl_XBM_Image.cxx... Compiling Fl_XPM_Image.cxx... Compiling Fl_abort.cxx... Compiling Fl_add_idle.cxx... Compiling Fl_arg.cxx... Compiling Fl_compose.cxx... Compiling Fl_display.cxx... Compiling Fl_get_key.cxx... Compiling Fl_get_system_colors.cxx... Compiling Fl_grab.cxx... Compiling Fl_lock.cxx... Fl_lock.cxx: In function 'void thread_awake_cb(int, void*)': Fl_lock.cxx:320: warning: 'data' may be used uninitialized in this function Fl_lock.cxx:319: warning: 'func' may be used uninitialized in this function Fl_lock.cxx: In function 'void thread_awake_cb(int, void*)': Fl_lock.cxx:320: warning: 'data' may be used uninitialized in this function Fl_lock.cxx:319: warning: 'func' may be used uninitialized in this function Compiling Fl_own_colormap.cxx... Compiling Fl_visual.cxx... Compiling Fl_x.cxx... Compiling filename_absolute.cxx... Compiling filename_expand.cxx... Compiling filename_ext.cxx... Compiling filename_isdir.cxx... Compiling filename_list.cxx... Compiling filename_match.cxx... Compiling filename_setext.cxx... Compiling fl_arc.cxx... Compiling fl_arci.cxx... Compiling fl_ask.cxx... Compiling fl_boxtype.cxx... Compiling fl_color.cxx... Compiling fl_cursor.cxx... Compiling fl_curve.cxx... Compiling fl_diamond_box.cxx... Compiling fl_dnd.cxx... Compiling fl_draw.cxx... Compiling fl_draw_image.cxx... Compiling fl_draw_pixmap.cxx... Compiling fl_encoding_latin1.cxx... Compiling fl_encoding_mac_roman.cxx... Compiling fl_engraved_label.cxx... Compiling fl_file_dir.cxx... Compiling fl_font.cxx... Compiling fl_gtk.cxx... Compiling fl_labeltype.cxx... Compiling fl_line_style.cxx... Compiling fl_open_uri.cxx... Compiling fl_oval_box.cxx... Compiling fl_overlay.cxx... Compiling fl_overlay_visual.cxx... Compiling fl_plastic.cxx... Compiling fl_read_image.cxx... Compiling fl_rect.cxx... Compiling fl_round_box.cxx... Compiling fl_rounded_box.cxx... Compiling fl_set_font.cxx... Compiling fl_set_fonts.cxx... Compiling fl_scroll_area.cxx... Compiling fl_shadow_box.cxx... Compiling fl_shortcut.cxx... Compiling fl_show_colormap.cxx... Compiling fl_symbols.cxx... Compiling fl_vertex.cxx... Compiling screen_xywh.cxx... Compiling fl_utf8.cxx... Compiling fl_call_main.c... Compiling flstring.c... Compiling scandir.c... Compiling numericsort.c... Compiling vsnprintf.c... Compiling fl_utf.c... Compiling xutf8/case.c... Compiling xutf8/is_right2left.c... Compiling xutf8/is_spacing.c... Compiling xutf8/keysym2Ucs.c... Compiling xutf8/utf8Input.c... Compiling xutf8/utf8Utils.c... Compiling xutf8/utf8Wrap.c... /usr/bin/ar cr ../lib/libfltk.a ... ranlib: for architecture: i386 file: ../lib/libfltk.a(Fl_x.o) has no symbols ranlib: for architecture: i386 file: ../lib/libfltk.a(fl_overlay_visual.o) has no symbols ranlib: for architecture: i386 file: ../lib/libfltk.a(fl_call_main.o) has no symbols ranlib: for architecture: i386 file: ../lib/libfltk.a(scandir.o) has no symbols ranlib: for architecture: i386 file: ../lib/libfltk.a(keysym2Ucs.o) has no symbols ranlib: for architecture: i386 file: ../lib/libfltk.a(utf8Input.o) has no symbols ranlib: for architecture: i386 file: ../lib/libfltk.a(utf8Utils.o) has no symbols ranlib: for architecture: i386 file: ../lib/libfltk.a(utf8Wrap.o) has no symbols ranlib: for architecture: ppc file: ../lib/libfltk.a(Fl_x.o) has no symbols ranlib: for architecture: ppc file: ../lib/libfltk.a(fl_overlay_visual.o) has no symbols ranlib: for architecture: ppc file: ../lib/libfltk.a(fl_call_main.o) has no symbols ranlib: for architecture: ppc file: ../lib/libfltk.a(scandir.o) has no symbols ranlib: for architecture: ppc file: ../lib/libfltk.a(keysym2Ucs.o) has no symbols ranlib: for architecture: ppc file: ../lib/libfltk.a(utf8Input.o) has no symbols ranlib: for architecture: ppc file: ../lib/libfltk.a(utf8Utils.o) has no symbols ranlib: for architecture: ppc file: ../lib/libfltk.a(utf8Wrap.o) has no symbols Compiling forms_compatability.cxx... Compiling forms_bitmap.cxx... Compiling forms_free.cxx... Compiling forms_fselect.cxx... Compiling forms_pixmap.cxx... Compiling forms_timer.cxx... /usr/bin/ar cr ../lib/libfltk_forms.a ... Compiling fl_images_core.cxx... Compiling Fl_BMP_Image.cxx... Compiling Fl_File_Icon2.cxx... Compiling Fl_GIF_Image.cxx... Compiling Fl_Help_Dialog.cxx... Compiling Fl_JPEG_Image.cxx... Compiling Fl_PNG_Image.cxx... Compiling Fl_PNM_Image.cxx... /usr/bin/ar cr ../lib/libfltk_images.a ... === making fluid === Compiling CodeEditor.cxx... Compiling Fl_Function_Type.cxx... Compiling Fl_Group_Type.cxx... Compiling Fl_Menu_Type.cxx... Compiling Fl_Type.cxx... Compiling Fl_Widget_Type.cxx... Compiling Fl_Window_Type.cxx... Compiling Fluid_Image.cxx... Compiling about_panel.cxx... Compiling align_widget.cxx... Compiling alignment_panel.cxx... Compiling code.cxx... Compiling factory.cxx... Compiling file.cxx... Compiling fluid.cxx... Compiling function_panel.cxx... Compiling template_panel.cxx... Compiling undo.cxx... Compiling widget_panel.cxx... Linking fluid... === making test === Compiling unittests.cxx... Linking unittests... Compiling adjuster.cxx... Linking adjuster... Compiling arc.cxx... Linking arc... Compiling ask.cxx... Linking ask... Compiling bitmap.cxx... Linking bitmap... Compiling blocks.cxx... Linking blocks... Compiling boxtype.cxx... Linking boxtype... Compiling browser.cxx... Linking browser... Compiling button.cxx... Linking button... Compiling buttons.cxx... Linking buttons... Compiling cairo_test.cxx... Linking cairo_test... Compiling checkers.cxx... Linking checkers... Compiling clock.cxx... Linking clock... Compiling colbrowser.cxx... Linking colbrowser... Compiling color_chooser.cxx... Linking color_chooser... Compiling cursor.cxx... Linking cursor... Compiling curve.cxx... Linking curve... Compiling demo.cxx... Linking demo... Compiling doublebuffer.cxx... Linking doublebuffer... Compiling editor.cxx... Linking editor... Generating fast_slow.cxx and header from fast_slow.fl... Compiling fast_slow.cxx... Linking fast_slow... Compiling file_chooser.cxx... Linking file_chooser... Compiling fonts.cxx... Linking fonts... Compiling forms.cxx... Linking forms... Compiling hello.cxx... Linking hello... Compiling help.cxx... Linking help... Compiling iconize.cxx... Linking iconize... Compiling image.cxx... Linking image... Generating inactive.cxx and header from inactive.fl... Compiling inactive.cxx... Linking inactive... Compiling input.cxx... Linking input... Compiling input_choice.cxx... Linking input_choice... Generating keyboard_ui.cxx and header from keyboard_ui.fl... Compiling keyboard_ui.cxx... Compiling keyboard.cxx... Linking keyboard... Compiling label.cxx... Linking label... Compiling line_style.cxx... Linking line_style... Compiling list_visuals.cxx... Linking list_visuals... Generating mandelbrot_ui.cxx and header from mandelbrot_ui.fl... Compiling mandelbrot_ui.cxx... Compiling mandelbrot.cxx... Linking mandelbrot... Compiling menubar.cxx... Linking menubar... Compiling message.cxx... Linking message... Compiling minimum.cxx... Linking minimum... Compiling navigation.cxx... Linking navigation... Compiling output.cxx... Linking output... Compiling overlay.cxx... Linking overlay... Compiling pack.cxx... Linking pack... Compiling pixmap.cxx... Linking pixmap... Compiling pixmap_browser.cxx... Linking pixmap_browser... Generating preferences.cxx and header from preferences.fl... Compiling preferences.cxx... Linking preferences... Generating radio.cxx and header from radio.fl... Compiling radio.cxx... Linking radio... Generating resize.cxx and header from resize.fl... Compiling resize.cxx... Linking resize... Compiling resizebox.cxx... Linking resizebox... Compiling rotated_text.cxx... Linking rotated_text... Compiling scroll.cxx... Linking scroll... Compiling subwindow.cxx... Linking subwindow... Compiling sudoku.cxx... Linking sudoku... Compiling symbols.cxx... Linking symbols... Generating tabs.cxx and header from tabs.fl... Compiling tabs.cxx... Linking tabs... Compiling threads.cxx... Linking threads... Compiling tile.cxx... Linking tile... Compiling tiled_image.cxx... Linking tiled_image... Generating valuators.cxx and header from valuators.fl... Compiling valuators.cxx... Linking valuators... Compiling utf8.cxx... Linking utf8... === making documentation === Formatting src/fltk.man... Formatting src/fltk-config.man... Formatting src/fluid.man... Formatting src/blocks.man... Formatting src/checkers.man... Formatting src/sudoku.man... % file test/editor test/editor: Mach-O executable i386 ----------------------------------------------------------------------------- _______________________________________________ fltk-dev mailing list fltk-dev@easysw.com http://lists.easysw.com/mailman/listinfo/fltk-dev