Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

pl:prolog:jpl:jpl [2019/06/27 15:50]
pl:prolog:jpl:jpl [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
 +====== JPL ======
 +[[http://​www.swi-prolog.org/​packages/​jpl/​|JPL]] is a library using the SWI-Prolog foreign interface and the Java jni interface providing a bidirectional interface between Java and Prolog that can be used to embed Prolog in Java as well as for embedding Java in Prolog. In both setups it provides a reentrant bidirectional interface.
  
 +
 +
 +===== Installing SWI-Prolog with JPL in Linux =====
 +
 +Notice: Based on first-hand experience, the use of standard ''​swi-prolog''​ packages in Debian-based distributions is **not** recommended,​ due to the following:
 +  * ''​swi-prolog''​ is absent in Debian Etch whatsoever (packages can be found in unstable and testing branches though),
 +  * JPL is not included in Debian/​Ubuntu packages (probably due to licensing issues, see below),
 +  * the standard package name (''​pl''​) has been changed to ''​swi-prolog'';​ that is known to break some things, including XPCE.
 +
 +With the above in mind, the following options are available:
 +  * use the stable RPM package available at the [[http://​www.swi-prolog.org/​dl-stable.html|SWI-Prolog download page]] (RPM-based distros only),
 +  * install from source (coming soon), FIXME
 +  * [[rpm2deb|convert the RPM package to DEB]] (in this case, rather harmless) or use the converted package,
 +  * use binary packages compiled from the source (coming soon). FIXME
 +
 +Alternatively,​ you can use the repository packages and install JPL as standalone. For now, posts #6 and #7 in [[http://​ubuntuforums.org/​showthread.php?​t=447728|this discussion]] should provide some insight.
 +
 +===== Installing SWI-Prolog with JPL in Mac OS X =====
 +
 +Installation and testing instructions for Mac OS X can be found [[macosx|here]].
 +
 +===== Dependencies =====
 +
 +DIYers should find [[dependencies|this]] handy.
 +
 +
 +===== Testing =====
 +
 +The following can be used to test whether JPL is working properly:
 +
 +  * go to the ''​lib''​ directory of your JPL-enabled SWI-Prolog installation:​
 +    * if you're using Linux and installed the RPM package: ''/​usr/​lib/​pl-<​version>''​
 +    * if you're a Mac user: ''/​opt/​local/​lib/​swipl-<​version>''​
 +  * cd to ''​doc/​packages/​examples/​jpl/​java/​Test''​
 +  * delete ''​Test.class''​ to force re-compilation of the test app
 +  * launch ''​./​run.sh''​
 +  * if all goes well, you should get something like this:
 +
 +  bash-3.2# ./run.sh
 +  Compiling Test
 +  ​
 +  JPL demo: Test
 +  ​
 +  test 0...% test.pl compiled 0.00 sec, 4,064 bytes
 +  passed.
 +  test 1...passed.
 +  test 2...passed.
 +  test 3...passed.
 +  test 4...passed.
 +  test 5...passed.
 +  test 6...passed.
 +  test 7...passed.
 +  test 8...passed.
 +  test 9...passed.
 +  test 10...passed.
 +  test 11...passed.
 +  test 101...00004567182904567231901235678312041678321528904567312936890412738905683412794156842736189057340412506823420839420831756240819623751407856239104837562910482956804237195684739158764391584763596579576799passed.
 +
 +===== Packages =====
 +
 +The following SWI-Prolog with JPL packages are available:
 +
 +  * Debian/​Ubuntu,​ converted from original RPMs: {{:​prolog:​jpl:​pl_5.6.54-320_i386.deb|5.6.54}}
 +  * OS X 10.4 and 10.5 users can get their installers [[http://​www.swi-prolog.org/​dl-stable.html|here]]
 +
 +For DIY:
 +  * //Patches vs. original debian/​ubuntu packages// FIXME
 +  * [[dependencies|build dependencies]]
 +
 +
 +
 +====== Specs ======
 +Some insight plus specs:
 +  * jpl is supposed to work with sun jdk only! (as stated by Jan W.)
 +  * the main reason [[http://​bugs.debian.org/​cgi-bin/​bugreport.cgi?​bug=449437|why jpl is not enabled]] in standard debian/​ubuntu is the fact, that sun jdk is not free
 +  * so compilation of jpl is disabled in debs by a debian patch, BUT removing the patch does not result in a working packages! why?
 +  * we assume, that the packages built will use the standard sun-jdk packages, as generated by the [[http://​packages.debian.org/​etch/​java-package|java-package for etch]] (and hardy)
 +  * working with jdk 1.5 is a must!
 +  * working with jdk 1.6 should also be tested and reported! use [[http://​packages.debian.org/​lenny/​java-package|java-package from lenny]]
 +  * it should be tested using current swi versions from both [[http://​packages.debian.org/​lenny/​swi-prolog|testing]] and [[http://​packages.debian.org/​sid/​swi-prolog|sid]]!
 +  * check what changed (java package and swi vers) in intrepid ibex
 +  * some main problems with jpl include a proper location and config. (paths, env vars) for //jpl.so// and //jpl.jar//
 +  * I assume we get OS X instructions completely free too :-)
 +  * in the future we might consider testing with openjdk, icedtea, classpath,​gcj,​ whatever... but not now.
 +
 + --- //​[[gjn@agh.edu.pl|Grzegorz J. Nalepa]] 2008/07/05 10:44//
 +
 +Some demo projects to test:
 +  * [[pl:​miw:​miw08_ruleruntimeg_2]]
 +  * [[pl:​miw:​miw08_prolog_javasockets]]
 +  * [[pl:​miw:​miw08_ruleruntimeg]]
 +  * [[pl:​miw:​miw08_mindstormsapi]]
 +
 + --- //​[[gjn@agh.edu.pl|Grzegorz J. Nalepa]] 2008/07/05 11:04//
pl/prolog/jpl/jpl.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0