LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Fuduntu (http://www.linuxquestions.org/questions/fuduntu-98/)
-   -   Lidia library compile "make " error on ubuntu 12.10 (http://www.linuxquestions.org/questions/fuduntu-98/lidia-library-compile-make-error-on-ubuntu-12-10-a-4175451986/)

shixiangbupt 02-27-2013 08:10 PM

Lidia library compile "make " error on ubuntu 12.10
 
I am trying to install Lidia-2.3.0.When a write make command after configuring the software it shows some error.It is given below.
root@ubuntu:/home/shixiang/lidia-2.2.0# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking how to create a ustar tar archive... gnutar
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for type bool... yes
checking for ISO C++ inline... yes
checking for ISO C++ casting... yes
checking for explicit constructors by ISO C++... yes
checking for mutable class members by ISO C++... yes
checking for working template<>... yes
checking for explicit template instantiation by ISO C++... yes
checking for ISO C++ namespaces... yes
checking build system type... i686-pc-linux
checking host system type... i686-pc-linux
checking for a sed that does not truncate output... /bin/sed
checking for egrep... grep -E
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking how to run the C preprocessor... g++ -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking how to run the C++ preprocessor... g++ -E
checking for g77... no
checking for f77... no

checking for xlf... no
checking for frt... no
checking for pgf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for f90... no
checking for xlf90... no
checking for pgf90... no
checking for epcf90... no
checking for f95... no
checking for fort... no
checking for xlf95... no
checking for ifc... no
checking for efc... no
checking for pgf95... no
checking for lf95... no
checking for gfortran... no
checking whether we are using the GNU Fortran 77 compiler... no
checking whether accepts -g... no
checking the maximum length of command line arguments... 32768
checking command to parse /usr/bin/nm -B output from g++ object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking if g++ static flag works... yes
checking if g++ supports -fno-rtti -fno-exceptions... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
appending configuration tag "F77" to libtool
checking for latex... no
configure: WARNING:
You don't appear to have LaTeX 2e or some required LaTeX 2e packages, therefore you
will not be able to build the manual. You can obtain the manual in PostScript format
from http://www.informatik.tu-darmstadt.de/TI/LiDIA/
checking for gunzip... gunzip
checking for bunzip2... bunzip2
configure: checking which multi-precision arithmetic library to use
checking for GNU MP (version >= 3.1)... yes
checking for ANSI C header files... (cached) yes
checking sys/times.h usability... yes
checking sys/times.h presence... yes
checking for sys/times.h... yes
checking for sys/stat.h... (cached) yes
checking for unistd.h... (cached) yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking iostream usability... yes
checking iostream presence... yes
checking for iostream... yes
checking cstddef usability... yes
checking cstddef presence... yes
checking for cstddef... yes
checking cstdio usability... yes
checking cstdio presence... yes
checking for cstdio... yes
checking cstdlib usability... yes
checking cstdlib presence... yes
checking for cstdlib... yes
checking cmath usability... yes
checking cmath presence... yes
checking for cmath... yes
checking cctype usability... yes
checking cctype presence... yes
checking for cctype... yes
checking cstring usability... yes
checking cstring presence... yes
checking for cstring... yes
checking ctime usability... yes
checking ctime presence... yes
checking for ctime... yes
checking cassert usability... yes
checking cassert presence... yes
checking for cassert... yes
checking climits usability... yes
checking climits presence... yes
checking for climits... yes
checking sstream usability... yes
checking sstream presence... yes
checking for sstream... yes
checking for short... yes
checking size of short... 2
checking for int... yes
checking size of int... 4
checking for long... yes
checking size of long... 4
checking for double... yes
checking size of double... 8
checking whether byte ordering is bigendian... no
checking for use of STLport... no
checking for random and srandom... yes
checking for mkstemp... yes
checking whether POSIX signals work... yes
checking whether POSIX times work... yes
checking whether POSIX time work... yes
checking whether to compile the finite fields package... yes
checking whether to compile the linear algebra package... yes
checking whether to compile the lattice package... yes
checking whether to compile the number fields package... yes
checking whether to compile the elliptic curve package... yes
checking whether to compile the elliptic curve order package... yes
checking whether to compile the elliptic curve generation package... yes
configure: creating ./config.status
config.status: creating LiDIA.spec
config.status: creating library/base/Makefile
config.status: creating examples/base/Makefile
config.status: creating library/finite_fields/Makefile
config.status: creating examples/finite_fields/Makefile
config.status: creating library/linear_algebra/Makefile
config.status: creating examples/linear_algebra/Makefile
config.status: creating library/lattices/Makefile
config.status: creating examples/lattices/Makefile
config.status: creating library/number_fields/Makefile
config.status: creating examples/number_fields/Makefile
config.status: creating library/elliptic_curves/Makefile
config.status: creating examples/elliptic_curves/Makefile
config.status: creating library/ec_order/Makefile
config.status: creating examples/ec_order/Makefile
config.status: creating library/gec/Makefile
config.status: creating examples/gec/Makefile
config.status: creating Makefile
config.status: creating library/Makefile
config.status: creating examples/Makefile
config.status: creating doc/Makefile
config.status: creating include/config.h
config.status: include/config.h is unchanged
config.status: creating include/LiDIA/LiDIA.h
config.status: include/LiDIA/LiDIA.h is unchanged
config.status: creating include/LiDIA/path.h
config.status: include/LiDIA/path.h is unchanged
config.status: linking ./src/interfaces/bigint/gmp/bigint.cc to src/base/interfaces/bigint/bigint.cc
config.status: linking ./src/interfaces/udigit/gmp/udigit.cc to src/base/interfaces/udigit/udigit.cc
config.status: linking ./src/interfaces/udigit/gmp/udigit_appl.cc to src/base/interfaces/udigit/udigit_appl.cc
config.status: linking ./src/interfaces/bigint/gmp/bigint_def.h to include/LiDIA/kernel/bigint_def.h
config.status: linking ./src/interfaces/bigint/gmp/bigint_interface.h to include/LiDIA/kernel/bigint_interface.h
config.status: linking ./src/interfaces/udigit/gmp/udigit_def.h to include/LiDIA/kernel/udigit_def.h
config.status: linking ./src/interfaces/udigit/gmp/udigit_interface.h to include/LiDIA/kernel/udigit_interface.h
config.status: executing depfiles commands


root@ubuntu:/home/shixiang/lidia-2.2.0# make
cd library && make all
make[1]: enter `/home/shixiang/lidia-2.2.0/library'
Making all in base
make[2]:enter `/home/shixiang/lidia-2.2.0/library/base'
make all-am
make[3]: enter `/home/shixiang/lidia-2.2.0/library/base'
if /bin/bash ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I../../include -I../../src/base/include -I./../../src/base/include -O2 -MT sf_check_gcd.lo -MD -MP -MF ".deps/sf_check_gcd.Tpo" -c -o sf_check_gcd.lo `test -f '../../src/base/factorization/bigint/sf_check_gcd.cc' || echo './'`../../src/base/factorization/bigint/sf_check_gcd.cc; \
then mv -f ".deps/sf_check_gcd.Tpo" ".deps/sf_check_gcd.Plo"; else rm -f ".deps/sf_check_gcd.Tpo"; exit 1; fi
g++ -DHAVE_CONFIG_H -I../../include -I../../src/base/include -I./../../src/base/include -O2 -MT sf_check_gcd.lo -MD -MP -MF .deps/sf_check_gcd.Tpo -c ../../src/base/factorization/bigint/sf_check_gcd.cc -o sf_check_gcd.o
In file included from ../../src/base/factorization/bigint/sf_check_gcd.cc:24:0:
../../src/base/include/LiDIA/bigmod.h:62:49: error: declaration of 'static LiDIA::residue_class<LiDIA::bigint>* LiDIA::bigmod::residue_class()' [-fpermissive]
In file included from ../../src/base/include/LiDIA/base/base_bigmod.h:30:0,
from ../../src/base/include/LiDIA/bigmod.h:29,
from ../../src/base/factorization/bigint/sf_check_gcd.cc:24:
../../src/base/include/LiDIA/base/residue_class_list.h:39:7: error: changes meaning of 'residue_class' from 'class LiDIA::residue_class<LiDIA::bigint>' [-fpermissive]
make[3]: *** [sf_check_gcd.lo] error 1
make[3]:leave `/home/shixiang/lidia-2.2.0/library/base'
make[2]: *** [all] error 2
make[2]:leave `/home/shixiang/lidia-2.2.0/library/base'
make[1]: *** [all-recursive] error 1
make[1]:leave `/home/shixiang/lidia-2.2.0/library'
make: *** [all-subdirs] error 2
root@ubuntu:/home/shixiang/lidia-2.2.0#

knudfl 02-28-2013 02:24 PM

Welcome to LQ.

Lidia http://fluxionsdividebyzero.com/p1/c...lidia/doc.html

Lidia-2.3.0 can be compiled with g++-4.4 on some of the later Ubuntu versions.
( $ sudo apt-get install g++-4.4 )
And it went OK here with Ubuntu 12.10 - i686, at building the static library :

$ cd lidia-2.3.0/ && export CC=gcc-4.4 CXX=g++-4.4 && ./configure
$ make : No errors. 'libLiDIA.a' is created.

If you also want the shared libraries : gcc / g++ version 4.1.2 works :
$ cd lidia-2.3.0/ && export CC=gcc41 CXX=g++41 && ./configure --enable-shared
$ make clean && make :
libLiDIA.a libLiDIA.so libLiDIA.so.0 libLiDIA.so.0.0.0 are created.


* gcc41-compat-4.1.2-ubuntu1210_i386 / g++41-compat-4.1.2*, post #47 here
http://www.linuxquestions.org/questi...532/page4.html

-


All times are GMT -5. The time now is 06:24 AM.