Hello DX's,
Thanks to all those who helped, specifically David Thompson who
provided the magic linker switch that created the correct symbol, I
now have a loadable version of the FancyRibbon module that dx on
OSX actually loads!
For anyone who is interested, below I have included the
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
Norm,
DX cannot find the entry point DXEntry in the module.
Using gcc on Redhat Linux 9.0 and Fedora,the link for my loadable module
has -e DXEntry while yours has -e _DXEntry. Is the additional
underscore correct? Tjhe actual name of the routine is just DXEntry.
Kent
- - -
Kent
Which version of gcc are you using? You can look at the symbol table
of your loadable module with nm and determine what symbols are in
there. When I first was writing modules for MacOS X, the compiler
used libtool for the linking and the compiler inserted the underscore
(_) on all function
I think the underscore in the symbol table is the problem. After
looking at the dev-archives again, it seem that specifying an entry
point is not even required in the current version, dx will always
look for a DXEntry function in any module that it loads.
The dev-archives pointed me to the
Hmm. With a lot of hacking of the Makefile, I was able to compile the CMSP
linux (12/99) package on my mac. I use the fink from dx, so there are minor
variations.
DX_ARCH= macos
LIBDXL=$(BASE)/lib_$(DX_ARCH)/libDXL.a
CFLAGS = -O -D$(DX_ARCH) -I$(BASE)/include -I/sw/include
LIBS =
Hi Norm,
My loadable has several parts so I start by compiliing each with gcc 3.3.2
and no -e. This produces a bunch of object files, extension .o. Using nm
on these, I find the symbol DXEntry without the underscore in the
appropriate file.
Then, all the pieces are combined into a shared
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
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