Error building Sage 9.0 on CentOS 7.5

60 views
Skip to first unread message

Josh Bevan

unread,
Jan 30, 2020, 10:00:09 PM1/30/20
to sage-devel
Hello,

I'm trying to build Sage 9.0 from source on CentOS 7.5.1804 and it fails with:
"Error installing package sqlite-3290000"
Here is the ".../sage-9.0/logs/pkgs/sqlite-3290000.log" log file that the error message says to include:

The two main messages that jump out to me are:
"configure: WARNING: unrecognized options: --disable-maintainer-mode" I had seen that option listed in a post from a decade ago as a solution to a Sage Sqlite build error, although I doubt that is still relevant
and
" WARNING: 'aclocal-1.15' is missing on your system." Which seems unimportant since it's followed with the text "You only need it if..." with reasons that don't pertain to me.

For some additional context:
This is being built on a cluster with SGE (Sun Grid Engine) and uses Lmod for a module system. I have gcc 8.3.0, python 3.6.9, and blis 0.6.0 (OpenBLAS alternative with better performance) modules loaded, any other dependencies (e.g. Perl) I've left as the system defaults and they have not been overridden by the module system. I unpacked the zip and simply ran "make" with no additional messing with config or modifications.

If there is any additional info I should supply that would prove helpful feel free to let me know.

Thanks!
Josh

Isuru Fernando

unread,
Jan 30, 2020, 10:20:29 PM1/30/20
to sage-devel
> " WARNING: 'aclocal-1.15' is missing on your system." Which seems unimportant since it's followed with the text "You only need it if..." with reasons that don't pertain to me.

One possible reason is that somehow the timestamps for the files got messed up. Easiest solution would be to install automake 1.15. You can also do a make clean and try again.

Isuru

--
You received this message because you are subscribed to the Google Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/98041908-f9f6-47d6-9885-6126dffab1d9%40googlegroups.com.

Dima Pasechnik

unread,
Jan 31, 2020, 3:37:32 AM1/31/20
to sage-devel
On Fri, Jan 31, 2020 at 3:20 AM Isuru Fernando <isu...@gmail.com> wrote:
>
> > " WARNING: 'aclocal-1.15' is missing on your system." Which seems unimportant since it's followed with the text "You only need it if..." with reasons that don't pertain to me.
>
> One possible reason is that somehow the timestamps for the files got messed up. Easiest solution would be to install automake 1.15. You can also do a make clean and try again.
>
> Isuru
>
> On Thu, Jan 30, 2020 at 9:00 PM Josh Bevan <jbe...@bu.edu> wrote:
>>
>> Hello,
>>
>> I'm trying to build Sage 9.0 from source on CentOS 7.5.1804 and it fails with:
>> "Error installing package sqlite-3290000"
>> Here is the ".../sage-9.0/logs/pkgs/sqlite-3290000.log" log file that the error message says to include:
>> https://pastebin.com/SCy98UXK
>>
>> The two main messages that jump out to me are:
>> "configure: WARNING: unrecognized options: --disable-maintainer-mode" I had seen that option listed in a post from a decade ago as a solution to a Sage Sqlite build error, although I doubt that is still relevant
>> and
>> " WARNING: 'aclocal-1.15' is missing on your system." Which seems unimportant since it's followed with the text "You only need it if..." with reasons that don't pertain to me.
>>
>> For some additional context:
>> This is being built on a cluster with SGE (Sun Grid Engine) and uses Lmod for a module system. I have gcc 8.3.0, python 3.6.9, and blis 0.6.0 (OpenBLAS alternative with better performance) modules loaded, any other dependencies (e.g. Perl) I've left as the system defaults and they have not been overridden by the module system. I unpacked the zip and simply ran "make" with no additional messing with config or modifications.

by default (without --disable-maintainer-mode - which sadly is not
understood by sqlite) autconf-generated config scripts are very
sensitite to timestamps, and Lmod is not fast enough,
apparently, to make it work.

Can you do the build and work on a local disk?
("scratch partition", that's how cluster people call them, I gather)



>>
>> If there is any additional info I should supply that would prove helpful feel free to let me know.
>>
>> Thanks!
>> Josh
>>
>> --
>> You received this message because you are subscribed to the Google Groups "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
>> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/98041908-f9f6-47d6-9885-6126dffab1d9%40googlegroups.com.
>
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CA%2B01voNFFxY7CzwPgbOUHQ6_m%2Bp-DCCECTy6hMDSZhZbrqywZQ%40mail.gmail.com.

Dima Pasechnik

unread,
Jan 31, 2020, 3:40:47 AM1/31/20
to sage-devel

Dima Pasechnik

unread,
Jan 31, 2020, 6:13:05 AM1/31/20
to sage-devel
On Fri, Jan 31, 2020 at 3:20 AM Isuru Fernando <isu...@gmail.com> wrote:
>
> > " WARNING: 'aclocal-1.15' is missing on your system." Which seems unimportant since it's followed with the text "You only need it if..." with reasons that don't pertain to me.
>
> One possible reason is that somehow the timestamps for the files got messed up. Easiest solution would be to install automake 1.15. You can also do a make clean and try again.
>

if you have or can install sqlite development package on your system,
then the current Sage beta (9.1.beta2) already has mechanisms to use
it, instead of building its own.
You can actually don't need to switch from your 9.0, just save
https://git.sagemath.org/sage.git/plain/build/pkgs/sqlite/spkg-configure.m4?id=3f9ef468a2a708f7c3607ed4200c912bba50f93d
to build/pkgs/sqlite/spkg-configure.m4
run
./boostrap # needs autotools installed
./configure

and in the output of the latter you'd see

sqlite-3290000 will not be installed (configure check)




> Isuru
>
> On Thu, Jan 30, 2020 at 9:00 PM Josh Bevan <jbe...@bu.edu> wrote:
>>
>> Hello,
>>
>> I'm trying to build Sage 9.0 from source on CentOS 7.5.1804 and it fails with:
>> "Error installing package sqlite-3290000"
>> Here is the ".../sage-9.0/logs/pkgs/sqlite-3290000.log" log file that the error message says to include:
>> https://pastebin.com/SCy98UXK
>>
>> The two main messages that jump out to me are:
>> "configure: WARNING: unrecognized options: --disable-maintainer-mode" I had seen that option listed in a post from a decade ago as a solution to a Sage Sqlite build error, although I doubt that is still relevant
>> and
>> " WARNING: 'aclocal-1.15' is missing on your system." Which seems unimportant since it's followed with the text "You only need it if..." with reasons that don't pertain to me.
>>
>> For some additional context:
>> This is being built on a cluster with SGE (Sun Grid Engine) and uses Lmod for a module system. I have gcc 8.3.0, python 3.6.9, and blis 0.6.0 (OpenBLAS alternative with better performance) modules loaded, any other dependencies (e.g. Perl) I've left as the system defaults and they have not been overridden by the module system. I unpacked the zip and simply ran "make" with no additional messing with config or modifications.
>>
>> If there is any additional info I should supply that would prove helpful feel free to let me know.
>>
>> Thanks!
>> Josh
>>
>> --
>> You received this message because you are subscribed to the Google Groups "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
>> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/98041908-f9f6-47d6-9885-6126dffab1d9%40googlegroups.com.
>
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CA%2B01voNFFxY7CzwPgbOUHQ6_m%2Bp-DCCECTy6hMDSZhZbrqywZQ%40mail.gmail.com.

Josh Bevan

unread,
Jan 31, 2020, 3:47:22 PM1/31/20
to sage-devel
Thanks for the help so far; a couple comments/questions:
The "spkg-configure.m4" for sqlite worked and was able to use an installed version, but I then got the same error with brial-1.2.5 which also does not recognize the --disable-maintainer-mode option. I suspect continuing down this route would just be playing whack-a-mole with packages that do not recognize that option.

The installation is indeed happening over a networked filesystem, so I get how timestamps may not match. It *is* possible to build from a local disk from a particular node (/scratch as noted). After reading more carefully through the install instructions I noted:
"Note that once you have built Sage (by running make, as described below), you will not be able to move or rename its directory without likely breaking Sage."

Ok, so I can't actually have it put the built install on /scratch and move it where I want after. Then I noted:
"SAGE_BUILD_DIR - the default behavior is to build each spkg in a subdirectory of $SAGE_ROOT/... If this variable is set, then build in $SAGE_BUILD_DIR/... instead"
"By default, `make install' will install all the files in ...  You can specify an installation prefix other than ... using `--prefix', for instance `--prefix=$HOME'."

So I set the build dir on /scratch too and set "prefix" to be the correct final install location. The install failed part-way through again with:
Error building Sage.

The following package(s) may have failed to build (not necessarily
during this run of 'make all-start'):

* package: pari_seadata_small-20090618.p0
  log file: /scratch/sage/sage-9.0/logs/pkgs/pari_seadata_small-20090618.p0.log
  build directory: /scratch/sageb/pari_seadata_small-20090618.p0

The log file was empty, hmm. So I just simply ran make again on the hopes that some transient issue popped up. This time it successfully installed.

I'm able to load up sage and do the simple suggested "2+2" and "factor(2005)".
However when I do 
[jbevan@scc-he1 sage-9.0]$ sage --testall

I get:
no stored timings available
Running doctests with ID 2020-01-31-13-28-13-f917e3d0.
Git branch: develop
Using --optional=build,dochtml,memlimit,mpir,sage
Doctesting entire Sage library.
Doctesting 3796 files.
sage -t src/sage/__init__.py
    [11 tests, 0.05 s]
sage -t src/sage/env.py
    [44 tests, 0.36 s]
sage -t src/sage/all.py
    [16 tests, 1.34 s]
sage -t src/sage/version.py
    [0 tests, 0.00 s]
sage -t src/sage/all_cmdline.py
    [0 tests, 0.00 s]
sage -t src/sage/all_notebook.py
    [0 tests, 0.00 s]
sage -t src/sage/monoids/automatic_semigroup.py
**********************************************************************
File "src/sage/monoids/automatic_semigroup.py", line 156, in sage.monoids.automatic_semigroup.AutomaticSemigroup
Failed example:
    N.cardinality() == G5.cardinality()
Expected:
    True
Got:
    <CSI-?1034h>True
**********************************************************************
1 item had failures:
   1 of  80 in sage.monoids.automatic_semigroup.AutomaticSemigroup
    [268 tests, 1 failure, 1.28 s]

It continues on with more tests, most of which pass and maybe 1 in 10-20 have a failure. They all look like:
Expected:
    n^2*log(x)
Got:
    <CSI-?1034h>n^2*log(x)
and
Expected:
     pi*x
    e
Got:
    <CSI-?1034h> pi*x
    e

It seems that these test actually are passing, but some garbage is pre-pended. What's causing this, and should I care (i.e. will it affect normal Sage usage)?

Thanks!
Josh

Dima Pasechnik

unread,
Jan 31, 2020, 4:00:34 PM1/31/20
to sage-devel
On Fri, Jan 31, 2020 at 8:47 PM Josh Bevan <jbe...@bu.edu> wrote:
>
> Thanks for the help so far; a couple comments/questions:
> The "spkg-configure.m4" for sqlite worked and was able to use an installed version, but I then got the same error with brial-1.2.5 which also does not recognize the --disable-maintainer-mode option. I suspect continuing down this route would just be playing whack-a-mole with packages that do not recognize that option.
>
> The installation is indeed happening over a networked filesystem, so I get how timestamps may not match. It *is* possible to build from a local disk from a particular node (/scratch as noted). After reading more carefully through the install instructions I noted:
> "Note that once you have built Sage (by running make, as described below), you will not be able to move or rename its directory without likely breaking Sage."
>
> Ok, so I can't actually have it put the built install on /scratch and move it where I want after. Then I noted:
> "SAGE_BUILD_DIR - the default behavior is to build each spkg in a subdirectory of $SAGE_ROOT/... If this variable is set, then build in $SAGE_BUILD_DIR/... instead"
> "By default, `make install' will install all the files in ... You can specify an installation prefix other than ... using `--prefix', for instance `--prefix=$HOME'."
>
> So I set the build dir on /scratch too and set "prefix" to be the correct final install location.

Good!
This must be something funny with locale, or terminal, or shell...
How exactly are you accessing the node?
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/f4472011-c13f-4580-8b77-08af6acf75fb%40googlegroups.com.

Josh Bevan

unread,
Jan 31, 2020, 5:04:00 PM1/31/20
to sage-devel
The cluster runs Sun Grid Engine (SGE). I ssh into the cluster to the login node using MobaXterm v12.4 from Windows 10. Then I "qrsh" into a compute node with an interactive shell and "module load sagemath"; this uses Lmod to load a modulefile.lua which contains:
local root = pathJoin("/share/pkg.7",myModuleName(),myModuleVersion())
local base = pathJoin("/share/pkg.7",myModuleName(),myModuleVersion(),"install")

setenv("SAGE_ROOT",             pathJoin(root,"src/sage-9.0"))
setenv("SAGE_LOCAL",            base)
setenv("SCC_SAGEMATH_DIR",      base)
setenv("SCC_SAGEMATH_BIN",      pathJoin(base,"bin"))

prepend_path("PATH",pathJoin(base,"bin"))

Then I just execute "sage --testall" from the shell on the compute node.

If you like I can log the tests to a file and upload it. The only other salient fact I noticed is that on any given failure only 1 of the tests fails with the extra "<CSI-?1034h>" garbage.


Dima Pasechnik

unread,
Jan 31, 2020, 5:11:50 PM1/31/20
to sage-devel
I found an old ticket where some CSI- garbage was mentioned:
https://trac.sagemath.org/ticket/14370
The solution there was to unset environment variable TERM

Perhaps that's the cause here too, in particular given that you ssh
from Windows...

>
>
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/097d0cdf-296f-4a0a-b007-d2c7cacf51e2%40googlegroups.com.

Dima Pasechnik

unread,
Jan 31, 2020, 5:16:40 PM1/31/20
to sage-devel
once logged one, you might try setting TERM to "v100" or "xterm"

Josh Bevan

unread,
Jan 31, 2020, 5:26:17 PM1/31/20
to sage-devel
I "unset TERM" and that worked, currently a hundred something tests deep with no failures.

Thanks again for your help!
Josh

Markus Wageringel

unread,
Feb 1, 2020, 4:24:33 AM2/1/20
to sage-devel
Rather than unsetting TERM, you could add set enable-meta-key off to your .inputrc file to solve this. I had the same problem here.
Reply all
Reply to author
Forward
0 new messages