Strange. SWI-Prolog.h (which is #include'd in opaque.c) defines 'PL_blob_t' and the various 'PL_BLOB_*' constants. So - if SWI-Prolog.h has been found, those errors should not arise ... and if SWI_Prolog.h was not found, then you should also have received an error message telling you about that.(You're sure it's the updated version of pl that's being found ? .... not still getting that old SWI-Prolog.h that knows nothing of 'PL_blob_t' and friends ?)
L::P::Y-0.08 is compiling ok for me against pl-5.6.1. I'm using the MinGW port of gcc in a native Win32 environment (not Cygwin) but I would not expect that to make a big difference. And I'm using the SWI-Prolog Windows binary (apparently built using a Microsoft compiler) provided on the website. I changed the name of pl\lib\libpl.lib to pl\lib\libpl.a so that the library could be found for linking purposes. Alternatively you could probably amend the Low/Makefile.PL so that 'pl.dll' gets used for linking.
I just noticed that for Windows 95/98/ME they are recommending that you use pl-5.4.7. Is that relevant to your situation ?
Cheers, Rob | [reply] |
I'm using Windows XP and the SWI-Prolog Windows binary. I've linked /usr/bin/pl (in Cygwin) to the Windows Prolog.
The test of the Prolog settings (PLTHREADS, etc.) shows, that the right binary is found.
I will try to use MinGW and to change the name of the library.
| [reply] |
The error you're getting indicates that the wrong SWI-Prolog.h is getting found. Not sure how that would be happening ... but I can't see that there's any other explanation. If the SWI-Prolog.h that ships with 5.6.1 gets found, then you simply won't get those errors when opaque.c is compiled.
Cheers, Rob
| [reply] |