I would say that the biggest problem probably lies within your mdf
file. You should define the full path to the loadable module instead
of a relative path "./FancyRibbon".
David
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
--
.............................................................................
David L. Thompson Visualization and Imagery Solutions, Inc.
mailto:[EMAIL PROTECTED] 5515 Skyway Drive, Missoula, MT 59804
Phone : (406)756-7472