The short path here is because I am invoking dx from the command line, with:
dx -mdf ./FancyRibbon.mdf
I did also check to see if changing the LOADABLE line in the mdf file
to the complete full path would make a difference. I get the same
error message just with the complete path now instead of just a
relative path, i.e. that DX cannot find the entry point DXEntry in
the module.
Still think that another linker switch is needed to make DXEntry the
actual entry point for the module.
Thanks,
Norm
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
--
*********************************
Norman W. Schaeffler, Ph.D.
Flow Physics and Control Branch
NASA Langley Research Center
Mail Stop 170, Building 1247A, Room 107
Hampton, Virginia 23681
Phone: (757) 864-5390
New E-Mail: [EMAIL PROTECTED]