
Samir Genaim wrote:
I'm trying to install your PPL library and use with SICStus Prolog running on RedHat 9. However I didn't succeed to install either the rpm packages or compile the sources. I enclosed below a description of the error messages I got. I'll be thankful if you have a look and tell me if you have any idea what is wrong in my configuration ?
[...]
Installing ppl-sicstus-0.5-1.i386.rpm works fine, but when installing the sicstus interface I get the following: [root@localhost ppl]# rpm -i ppl-sicstus-0.5-1.i386.rpm error: Failed dependencies: libgmpxx.so.3 is needed by ppl-sicstus-0.5-1 libpwl.so.1 is needed by ppl-sicstus-0.5-1 what's the libpwl ?? I couldn't found this library on rpmfind.net
Dear Samir,
the PWL is the "Parma Watchdog Library" and the fact that you could not find an RPM for it in the PPL web and ftp sites is our fault. We will correct this situation as soon as possible, but meanwhile you have to compile from the sources. Which brings us to the topic of the problem you are having with GMP.
When running "./configure --enable-cxx" it complain about a missing library:
GMP is the GNU Multi-Precision library: see http://www.swox.com/gmp/ for more information. Do not forget to enable the C++ interface: add --enable-cxx to the configuration options.
BUT this library is installed on my machine:
[root@localhost ppl-0.5]# rpm -q gmp gmp-4.1.2-2
While you have a version of GMP installed on your system, this version has been built with the C++ interface disabled. Unfortunately, distributors such as Red Hat still tend to ship RPM packages for GMP with this problem, regularly dismaying C++ programmers. You will thus have to build GMP by yourself, using a configure command like
/wherever/gmp-4.1.2/configure --prefix=/usr/local --enable-cxx
(notice the `--enable-cxx', as recommended, in the error message above).
To make sure this is the cause of the problem (as I am pretty sure), try to do
$ rpm -ql gmp /usr/lib/libgmp.so.3 /usr/lib/libgmp.so.3.3.2 /usr/lib/libmp.so.3 /usr/lib/libmp.so.3.1.6 /usr/share/doc/gmp-4.1.2 /usr/share/doc/gmp-4.1.2/COPYING /usr/share/doc/gmp-4.1.2/NEWS /usr/share/doc/gmp-4.1.2/README
You should see that the C++ interface is not there. You are missing the libgmpxx.* files. For instance, in my system I have
/usr/local/lib/libgmp.a /usr/local/lib/libgmp.la /usr/local/lib/libgmp.so /usr/local/lib/libgmp.so.3 /usr/local/lib/libgmp.so.3.3.2 /usr/local/lib/libgmpxx.a /usr/local/lib/libgmpxx.la /usr/local/lib/libgmpxx.so /usr/local/lib/libgmpxx.so.3 /usr/local/lib/libgmpxx.so.3.0.4
(do not worry about the *.la files).
Please do not hesitate to come back to us (ppl-devel@cs.unipr.it) in case you have any problem. If you plan to use the PPL, let me suggest you subscribe to the PPL-announce mailing list: very low traffic and only the very important information goes there. See http://www.cs.unipr.it/ppl/MailingLists/ for the details. Cheers
Roberto