Hello DX'ers,

I am attempting to get the FancyRibbon module compiled under Mac OSX. Up to this point, I have not been fully successful. After playing with the linker switches for a while, I can build the source successfully, but I get an error when DX tries to load the module. Has anyone successfully built a loadable module for OSX?

Here are the details:
OSX 10.2.8, Dec 2002 Developer Tools, VIS, Inc build of DX 4.3.0

I get the following error on load:

0: ERROR: MDF file: Invalid data: cannot find entry point 'DXEntry' in file './FancyRibbon' / module FancyRibbon

I compiled the source with the following makefile :
*************
DXARCH = macos
BASE = /Applications/OpenDX/OpenDX.app/Contents/dx

DXCC = cc
INCLUDES = -I$(BASE)/include
DXCFLAGS = -no-cpp-precomp -dynamic -Wall -I/usr/X11R6/include -fno-common -fPIC

LINK = ld
CHECK = -bundle_loader $(BASE)/bin_macos/dxexec
LDFLAGS = -bundle -flat_namespace $(CHECK) -e _DXEntry
LIBS = -L$(BASE)/lib_macos -L/sw/lib -lm -ldl

FancyRibbon:    FancyRibbon.c userFancyRibbon.c
        $(DXCC) $(INCLUDES) $(DXCFLAGS) -c FancyRibbon.c
        $(DXCC) $(INCLUDES) $(DXCFLAGS) -c userFancyRibbon.c
$(LINK) $(LDFLAGS) $(LIBS) -o FancyRibbon userFancyRibbon.o FancyRibbon.o /usr/lib/bundle1.o
        rm FancyRibbon.o
        rm userFancyRibbon.o

userFancyRibbon.c:      FancyRibbon.mdf
$(BASE)/bin/mdf2c -m FancyRibbon.mdf > userFancyRibbon.c

*************

The entry point is defined on the linker command line, but it does not appear to have stuck, making me think something else is wrong. It the underscore is omitted before DXEntry, the linker complains that it cannot find DXEntry.

Any ideas as to what to change or try?

Thanks,

Norm

Reply via email to