我正在使用Java编写程序,我想连接到Prolog。因此,我决定使用JPL。在Windows Vista上使用JPL是完美的。后来,我必须将OS平台更改为Ubuntu 11.04。不幸的是,有一个错误:
符号查找错误:/usr/lib/swi-prolog/lib/i386/libjpl.so:undefined symbol:PL_is_initialised
环境:
我解释工作和问题的步骤如下。 步骤1:使用Synaptic Package Manager安装swi-prolog + jpl
第2步:运行Family.java,发现错误
步骤3:在 VMarguments 配置库路径 step4:再次运行,出现错误 /usr/lib/jvm/java-6-sun-1.6.0.24/bin/java:符号查找错误:/usr/lib/swi-prolog/lib/i386/libjpl.so:undefined symbol:PL_is_initialised < /强> step5:我也配置环境但错误仍然相同。
我用来解决问题的方法,如我从互联网上搜索的第3步和第5步。我找不到其他尝试的解决方案。有没有人有任何想法?
提前致谢。
答案 0 :(得分:1)
我认为你必须配置LD_LIBRARY_PATH
。尝试添加so-library文件的位置。并确保您的System.loadLibrary();
电话是相对的。
答案 1 :(得分:1)
非常感谢您的支持。现在,我可以解决这个问题。我在页面 http://code.google.com/p/javanaproche/wiki/HowToJPL
中找到了一条建议按照说明,我将swi-prolog版本更改为建筑形式源pl-5.10.1。最后,它的工作原理。我认为问题的发生是因为从synaptic manager获得的swi-prolog并没有设置为共享库。如果有人知道如何设置共享库,它可能会工作。