[fpc-pascal] linking and using dynamic libraries on amd64
Marc Santhoff
M.Santhoff at web.de
Sat Feb 14 06:21:10 CET 2015
On Fr, 2015-02-13 at 09:07 +0000, Tony Whyman wrote:
> A pity, because that would have been an easy fix. This type of error
> comes from either mis-matched calling conventions or incompatible
> argument lists.
No easy solution in sight...
> >From having done this sort of thing before all I can advise is to go
> through each function argument one by one and make sure that each
> argument type is exactly the same in terms of data representation. When
> going between 32 and 64 bit you can often find that there are subtle
> differences in how the different compilers treat types resulting in a
> type that might be compatible in the 32 bit world, ceasing to be
> compatible in the 64bit world.
I already started checking type sizes, but looking at the code is very
tough because of heavy use of macros.
Hopefully I can tweak those autoxxx-stuff into building a debug version
of the library. That should help in getting to know what exactly happens
where.
If that fails it'll be the time to polish some preprocessor tricks.
> Also: you are using a 'C' library and not a C++ library aren't you?
Yes.
Thanks so far.
--
Marc Santhoff <M.Santhoff at web.de>
More information about the fpc-pascal
mailing list