sage-6.0: Error installing 4ti2 package

63 views
Skip to first unread message

rickhg12hs

unread,
Jan 12, 2014, 11:36:21 AM1/12/14
to sage-s...@googlegroups.com
Trying to install 4ti2 package generates an error.  How can this be fixed?

[from log file]
...
****************************************************
Host system:
Linux steelers.net 3.12.6-200.fc19.i686.PAE #1 SMP Mon Dec 23 16:58:40 UTC 2013 
i686 i686 i386 GNU/Linux
****************************************************
---
In file included from VectorArrayAPI.cpp:26:0:
../../src/groebner/VectorArrayAPI.h: In instantiation of 'static void _4ti2_::VectorArrayAPI::convert(const T1&, T2&) [with T1 = __gmp_expr<__mpz_struct [1], __mpz_struct [1]>; T2 = long long int]':
VectorArrayAPI.cpp:99:30:   required from here
../../src/groebner/VectorArrayAPI.h:67:8: error: cannot convert 'const __gmp_expr<__mpz_struct [1], __mpz_struct [1]>' to 'long long int' in assignment
     v2 = v1;
        ^
make[2]: *** [lib4ti2int64_la-VectorArrayAPI.lo] Error 1

William Stein

unread,
Jan 12, 2014, 12:45:49 PM1/12/14
to sage-support
On Sun, Jan 12, 2014 at 8:36 AM, rickhg12hs <rickh...@gmail.com> wrote:
> Trying to install 4ti2 package generates an error. How can this be fixed?
>

Here's my recipe (for SageMathCloud) for building 4ti2:

# 4ti2 into sage: until the optional spkg gets fixed:


./sage -sh
cd /tmp; wget http://www.4ti2.de/version_1.6/4ti2-1.6.tar.gz &&
tar xf 4ti2-1.6.tar.gz && cd 4ti2-1.6 ; ./configure
--prefix=/usr/local/sage/current/local/; time make -j16
make install # this *must* be a separate step!!
rm -rf /tmp/4ti2*
> --
> You received this message because you are subscribed to the Google Groups
> "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-support...@googlegroups.com.
> To post to this group, send email to sage-s...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-support.
> For more options, visit https://groups.google.com/groups/opt_out.



--
William Stein
Professor of Mathematics
University of Washington
http://wstein.org

rickhg12hs

unread,
Jan 12, 2014, 2:16:49 PM1/12/14
to sage-s...@googlegroups.com
Unfortunately, the recipe generated the same error.

/bin/sh ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../src -I../../src/4ti2  -D_4ti2_INT64_   -I./..  -D__STDC_LIMIT_MACROS -DNDEBUG -Wall -std=c++0x -MT lib4ti2int64_la-VectorArrayAPI.lo -MD -MP -MF .deps/lib4ti2int64_la-VectorArrayAPI.Tpo -c -o lib4ti2int64_la-VectorArrayAPI.lo `test -f 'VectorArrayAPI.cpp' || echo './'`VectorArrayAPI.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../src -I../../src/4ti2 -D_4ti2_INT64_ -I./.. -D__STDC_LIMIT_MACROS -DNDEBUG -Wall -std=c++0x -MT lib4ti2int64_la-VectorArrayAPI.lo -MD -MP -MF .deps/lib4ti2int64_la-VectorArrayAPI.Tpo -c VectorArrayAPI.cpp -o lib4ti2int64_la-VectorArrayAPI.o
In file included from VectorArrayAPI.cpp:26:0:
../../src/groebner/VectorArrayAPI.h: In instantiation of 'static void _4ti2_::VectorArrayAPI::convert(const T1&, T2&) [with T1 = __gmp_expr<__mpz_struct [1], __mpz_struct [1]>; T2 = long long int]':
VectorArrayAPI.cpp:99:30:   required from here
../../src/groebner/VectorArrayAPI.h:67:8: error: cannot convert 'const __gmp_expr<__mpz_struct [1], __mpz_struct [1]>' to 'long long int' in assignment
     v2 = v1;
        ^
make[3]: *** [lib4ti2int64_la-VectorArrayAPI.lo] Error 1
make[3]: Leaving directory `/tmp/4ti2-1.6/src/groebner'

rickhg12hs

unread,
Jan 12, 2014, 5:15:34 PM1/12/14
to sage-s...@googlegroups.com
FYI, building 4ti2 independently of Sage on my system completes without error.  In addition, all "make check" tests pass.

The config.log files are largely the same, but there are differences.  Here's a few that may be significant.

[diff -d working/config.log sage/config.log]
...
2228c2064
< CFLAGS='-O3 -fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math -march=pentiumpro -Wall -march=pentiumpro'
---
> CFLAGS='-O3 -fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math -march=pentiumpro -Wall'
2234c2070
< CXXFLAGS='-O3 -fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math -Wall -std=c++0x'
---
> CXXFLAGS=' -Wall -std=c++0x'
...
2600a2437
> #define _4ti2_HAVE_MPZ_INT64_CONVERSION 1

rickhg12hs

unread,
Jan 15, 2014, 12:52:37 PM1/15/14
to sage-s...@googlegroups.com
Was there there something from the original Sage install (compiled from source) that produced the different CXXFLAGS?

Strange that only the Sage config.log had "#define _4ti2_HAVE_MPZ_INT64_CONVERSION 1".
Reply all
Reply to author
Forward
0 new messages