[plt-scheme] 4.0.2 on OS X 10.3.9

From: David T. Pierson (dtp at mindstory.com)
Date: Thu Aug 7 22:07:40 EDT 2008

On Wed, Aug 06, 2008 at 01:58:44AM -0400, Carl Eastlund wrote:
> It works when built from source on the same system, so it's probably a
> matter of compatibility between Mac OS 10.3.9 and whatever the release
> was built on (10.4.something, I believe).  You should be able to build
> it from source as a workaround, if you have the developer tools

Perhaps the download page should be changed to say 10.4?

Also, it did not build from source without some tweaking.  Specifically,
I encountered link errors like this one:

g++  -dynamiclib -o PLT_MrEd.framework/Versions/4.0.2_3m/PLT_MrEd -Wl,-headerpad_max_install_names mwb_item.o mwb_panel.o mwb_timer.o mwb_frame.o mwb_list.o mPSDC.o mwb_types.o mwb_canvs.o mwb_gdi.o mwb_main.o mwb_utils.o mwb_data.o mwb_hash.o mwb_stdev.o mwb_win.o mwb_dc.o mwb_sysev.o mwb_dialg.o mwb_obj.o mxfspline.o mwx_choic.o mwx_main.o mwx_clipb.o mwx_menu.o mwx_messg.o mwxBorder.o mwx_dc.o mwxBorderArea.o mwx_dccan1.o mwx_mnuit.o mwxButtonBorder.o mwx_dccan2.o mwx_dccan3.o mwx_panel.o mwxLabelArea.o mwx_dcmem.o mwx_print.o mwxMacDC.o mwx_dcpr1.o mwx_rbox.o mwx_rbut.o mwx_sbar.o mwx_dialg.o mwx_screen.o mwxRectBorder.o mwx_slidr.o mwxScroll.o mwx_frame.o mwxScrollArea.o mwx_gauge.o mwxScrollData.o mwx_gdi.o mwx_app.o mwx_util.o mwx_area.o mwx_win.o mwx_buttn.o mwx_item.o mwximgfil.o mwx_canvs.o mwx_lbox.o mwx_check.o mwx_tabc.o mwx_gbox.o mwx_mac_utils.o mwx_bmp.o mwx_image.o mwx_xbm.o simpledrop.o wxs_bmap.o wxs_butn.o wxs_chce.o wxs_ckbx.o wxs_cnvs.o wxs_dc.o wxs_evnt.o wxs_fram.o wxs_gage.o wxs_gdi.o wxs_glob.o wxs_item.o wxs_lbox.o wxs_madm.o wxs_mede.o wxs_medi.o wxs_menu.o wxs_mio.o wxs_misc.o wxs_mpb.o wxs_obj.o wxs_panl.o wxs_rado.o wxs_slid.o wxs_snip.o wxs_styl.o wxs_tabc.o wxs_win.o wxscheme.o wx_media.o wx_mpriv.o wx_snip.o wx_msnip.o wx_mbuf.o wx_mpbrd.o wx_keym.o wx_medio.o wx_medad.o wx_style.o wx_mline.o wx_cgrec.o wxJPEG.o mred.o mredmac.o xcglue.o wxGC.o ../../wxmac/src/crbuffri.o ../../wxmac/src/crdatfri.o ../../wxmac/src/create.o ../../wxmac/src/crifrbuf.o ../../wxmac/src/crifrdat.o ../../wxmac/src/data.o ../../wxmac/src/hashtab.o ../../wxmac/src/miscellaneous.o ../../wxmac/src/parse.o ../../wxmac/src/rdftodat.o ../../wxmac/src/rdftoi.o ../../wxmac/src/rgb.o ../../wxmac/src/scan.o ../../wxmac/src/simx.o ../../wxmac/src/wrffrdat.o ../../wxmac/src/wrffri.o ../../wxmac/src/ALBirthDeath.o ../../wxmac/src/ALKeyboard.o ../../wxmac/src/ALUserPane.o ../../wxmac/src/LongControls.o ../../wxmac/src/ALCellData.o ../../wxmac/src/ALMouse.o ../../wxmac/src/ALUtilities.o ../../wxmac/src/ALDrawing.o ../../wxmac/src/ALScrolling.o ../../wxmac/src/LongCoords.o ../../wxmac/src/ALEditing.o ../../wxmac/src/ALSelecting.o ../../wxmac/src/QDDrawingState.o ../../wxmac/src/ALHeirarchical.o ../../wxmac/src/ALSelectors.o ../../mzscheme/libmzscheme3m.a -framework Carbon -framework Cocoa -framework QuickTime -framework AGL -framework OpenGL ../../wxcommon/jpeg/libjpeg.a ../../wxcommon/libpng/libpng.a -lz -ldl -lm  -liconv   wx_font.o
ld: /usr/lib/gcc/darwin/3.3/libgcc.a(_fixunssfdi.o) illegal reference to symbol: ___cmpdi2 defined in indirectly referenced dynamic library /usr/lib/libgcc_s.1.dylib

I was able to resolve these by adding /usr/lib/libgcc_s.1.dylib to the
link arguments in a few places:

(paths are relative to the build directory)

./mred/gc2/Makefile:wx_mac_LIBS = -framework Carbon -framework Cocoa -framework QuickTime -framework AGL -framework OpenGL $(JPEG_A) $(PNG_A) -lz -ldl -lm  -liconv -lc /usr/lib/libgcc_s.1.dylib
./mred/gc2/Makefile:	$(MREDLINKER) $(LDFLAGS) -o ../MrEd3m.app/Contents/MacOS/MrEd3m mrmain.o -Wl,-headerpad_max_install_names -F. -framework PLT_MrEd -framework Carbon -framework Cocoa /usr/lib/libgcc_s.1.dylib
./mred/Makefile:EXTRALDFLAGS_wx_mac = -framework Carbon -framework Cocoa -framework QuickTime -framework AGL -framework OpenGL -lz /usr/lib/libgcc_s.1.dylib

I'm not sure the last one was necessary, as I had changed it mistakenly
trying to resolve the first occurrence but it was not applicable to that
occurrence.

David


Posted on the users mailing list.