Installing Janus, linking error

Hi all. I’m trying to install janus on windows 11, 64 bits. I get an error about a missing external symbol:

janus.obj : error LNK2001: unresolved external symbol PL_get_delay_list

My SWI-Prolog version is 9.1.18 and it’s on my Path (both for user and system):

> swipl
Welcome to SWI-Prolog (threaded, 64 bits, version 9.1.18)
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software.
Please run ?- license. for legal details.

For online help and background, visit https://www.swi-prolog.org
For built-in help, use ?- help(Topic). or ?- apropos(Word).

I’ve tried to install both from the git repository directly, with:

pip install git+https://github.com/SWI-Prolog/packages-swipy.git#egg=janus_swi

And from a local clone of the repo with pip install . Both give the same error.

Installation works on WSL so I’m not terribly blocked (and I got Fedora on my boot path) but I would like to be able to use janus on windows also.

Any ideas?

PL_get_delay_list() was added after the last release. You should be fine if you install Prolog from the daily builds. Alternatively, after the clone, checkout the tag V9.1.18 to get the same version of janus as distributed with the release.

1 Like

Yep, that did it.

Thanks! I should have thought of that. On WSL I’m installing the daily builds.

FYI, if you build the Janus Python package using MSVC it may get into an infinite loop. Pushed a fix for that.

2 Likes