nitinsk@cfdvs.iitb.ac.in wrote:
following your instructions, i compiled the code snippet that you had sent. and as you had guessed, it did not compile. i am attaching a file containing the output of the compile command.
Dear Nitin, the output you sent shows nothing wrong. I am now convinced that you should have, in your system, a (old) version of GMP compiled with a different (version of the) C++ compiler. If you installed GMP 4.1.2 compiled with GCC 3.3 in /usr/local you should see something like the following $ ls -l /usr/local/include/gmp* -rw-r--r-- 1 root root 79571 Jun 30 15:32 /usr/local/include/gmp.h -rw-r--r-- 1 root root 182330 Jun 30 15:32 /usr/local/include/gmpxx.h $ ls -l /usr/local/lib/libgmp* -rw-r--r-- 1 root root 2863428 Jun 30 15:32 /usr/local/lib/libgmp.a -rwxr-xr-x 1 root root 693 Jun 30 15:32 /usr/local/lib/libgmp.la lrwxrwxrwx 1 root root 15 Jun 30 15:32 /usr/local/lib/libgmp.so -> libgmp.so.3.3.2 lrwxrwxrwx 1 root root 15 Jun 30 15:32 /usr/local/lib/libgmp.so.3 -> libgmp.so.3.3.2 -rwxr-xr-x 1 root root 1409013 Jun 30 15:32 /usr/local/lib/libgmp.so.3.3.2 -rw-r--r-- 1 root root 1337872 Jun 30 15:32 /usr/local/lib/libgmpxx.a -rwxr-xr-x 1 root root 1161 Jun 30 15:32 /usr/local/lib/libgmpxx.la lrwxrwxrwx 1 root root 17 Jun 30 15:32 /usr/local/lib/libgmpxx.so -> libgmpxx.so.3.0.4 lrwxrwxrwx 1 root root 17 Jun 30 15:32 /usr/local/lib/libgmpxx.so.3 -> libgmpxx.so.3.0.4 -rwxr-xr-x 1 root root 629220 Jun 30 15:32 /usr/local/lib/libgmpxx.so.3.0.4 And this should be the only version of GMP's libgmpxx.* files you have in the system. If, for example, you have another instance of the GMP C++ interface installed in a place that your compiler looks into _before_ looking into /usr/local/lib, this may be the cause of your problem. Try passing the --verbose option to the linker, i.e., use the command g++ -v -I/usr/local/include tgmp.cc -L/usr/local/lib -lgmpxx -lgmp -Xlinker --verbose and check where the linker picks libgmpxx.so from. For instance, here is what I see in the output of the above command: attempt to open /usr/local/lib/libgmpxx.so succeeded -lgmpxx (/usr/local/lib/libgmpxx.so) This tells me that the linker is picking up the right version of the library. Keep us informed. Cheers Roberto -- Prof. Roberto Bagnara Computer Science Group Department of Mathematics, University of Parma, Italy http://www.cs.unipr.it/~bagnara/ mailto:bagnara@cs.unipr.it