error building sage for Scientific Linux 7.6

73 views
Skip to first unread message

Charles Campbell

unread,
May 30, 2019, 3:51:57 PM5/30/19
to sage-devel
Been trying to build sage 8.7 under Scientific Linux (a redhat derivative); actually, I've tried to do so on and off for several years with no success ever.  I've installed openblas.x86_64 already.

From make:

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

* package: openblas-0.3.5.p0
  log file: /home/cecbkup/SW/SAGE/sage-8.7/logs/pkgs/openblas-0.3.5.p0.log
  build directory: /home/cecbkup/SW/SAGE/sage-8.7/local/var/tmp/sage/build/openblas-0.3.5.p0

* package: pari_seadata_small-20090618.p0
  log file: /home/cecbkup/SW/SAGE/sage-8.7/logs/pkgs/pari_seadata_small-20090618.p0.log
  build directory: /home/cecbkup/SW/SAGE/sage-8.7/local/var/tmp/sage/build/pari_seadata_small-20090618.p0

I have no idea where pari... comes from; yum -y list shows

opari2.x86_64                           1.1.2-3.el7                epel        
paris-traceroute.x86_64                 0.92-6.el7                 epel

Neither of which are "pari", although perhaps "opari..." is close.

Regards,
Charles Campbell
pari_seadata_small-20090618.p0.log

Dima Pasechnik

unread,
May 30, 2019, 3:59:48 PM5/30/19
to sage-devel
On Thu, May 30, 2019 at 8:51 PM Charles Campbell <cec...@gmail.com> wrote:
>
> Been trying to build sage 8.7 under Scientific Linux (a redhat derivative); actually, I've tried to do so on and off for several years with no success ever. I've installed openblas.x86_64 already.
>
> From make:
>
> The following package(s) may have failed to build (not necessarily
> during this run of 'make all-start'):
>
> * package: openblas-0.3.5.p0
> log file: /home/cecbkup/SW/SAGE/sage-8.7/logs/pkgs/openblas-0.3.5.p0.log
> build directory: /home/cecbkup/SW/SAGE/sage-8.7/local/var/tmp/sage/build/openblas-0.3.5.p0
>
> * package: pari_seadata_small-20090618.p0
> log file: /home/cecbkup/SW/SAGE/sage-8.7/logs/pkgs/pari_seadata_small-20090618.p0.log
> build directory: /home/cecbkup/SW/SAGE/sage-8.7/local/var/tmp/sage/build/pari_seadata_small-20090618.p0
>
> I have no idea where pari... comes from;

pari comes from Sage as well; there is a package called pari, of which
pari_seadata_small
is a part. So it's perfectly normal that directory
'/home/cecbkup/SW/SAGE/sage-8.7/local/./share/pari' already exists.

Do you have `cp` aliased to something (perhaps at the system level)
that produces this weird error in your log?

>Copying package files from temporary location
/home/cecbkup/SW/SAGE/sage-8.7/local/var/tmp/sage/build/pari_seadata_small-20090618.p0/inst
to > /home/cecbkup/SW/SAGE/sage-8.7/local
> cp: cannot create directory '/home/cecbkup/SW/SAGE/sage-8.7/local/./share/pari': File exists




> yum -y list shows
>
> opari2.x86_64 1.1.2-3.el7 epel
> paris-traceroute.x86_64 0.92-6.el7 epel
>
> Neither of which are "pari", although perhaps "opari..." is close.
>
> Regards,
> Charles Campbell
>
> --
> 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 post to this group, send email to sage-...@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/f087424b-b8a3-4f86-854c-fd2372695f81%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

E. Madison Bray

unread,
May 31, 2019, 10:39:41 AM5/31/19
to sage-devel
Are you trying to upgrade from some old, partial build? Or is this a
fresh build from scratch? If the former, I would just run `make
distclean` and start again.

Charles Campbell

unread,
Jun 2, 2019, 7:20:16 PM6/2/19
to sage-devel
Hello:

Dima: good catch; I have cp aliased to: /bin/cp -i.  I've now unaliased it and commented the alias command out of the file that normally sets it (the latter step as a "paranoia" step)

E.M.Bray: I've never had any success building sage, so no old stuff was lying around.  I simply got the tarball for sage 8.7 and extracted the contents.

I did a make distclean, then make -j10 which resulted in the log file I've provided.
Next try: make distclean; configure; make -j10 .  Didn't work, either, although there are some differences between the two log files.  I've attached it, too.

Hope you can help!
Charles Campbell
The latest problem now appears to be with openblas; I've attached the associated log. 
openblas-0.3.5.p0.log
openblas-0.3.5.p0.log

E. Madison Bray

unread,
Jun 3, 2019, 2:41:53 AM6/3/19
to sage-devel
Well, this would be a problem building OpenBLAS specifically :)

I see this same problem mentioned here as well. Maybe it will help:
https://github.com/JuliaLang/julia/issues/30696

I'm not sure I understand the patch on that issue that mentions
cross-compiling to a 32-bit architecture. You're clearly not doing
that, and you do have the NO_AVX512 macro defined.

I think the race condition issue seems more likely. I've also had
problems in the past with OpenBLAS's build system and running in
parallel. Try running just `make -j1 openblas` to build openblas by
itself first.

Failing that, you can try using an existing system BLAS by running
`./configure --with-blas=atlas` and also setting SAGE_ATLAS_LIB to the
correct path (typically just SAGE_ATLAS_LIB=/usr/lib). It's
unfortunate that both steps are required; something we're working to
fix.

Despite the spelling "--with-blas=atlas" this doesn't necessarily have
to use ATLAS BLAS, as it can detect other generic BLAS libs in many
cases.
> --
> 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 post to this group, send email to sage-...@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/b609243e-4f7e-45c9-8665-1757825ebfb0%40googlegroups.com.

Dima Pasechnik

unread,
Jun 3, 2019, 3:00:21 AM6/3/19
to sage-...@googlegroups.com
On Mon, 3 Jun 2019 at 08:41, E. Madison Bray <erik....@gmail.com> wrote:
Well, this would be a problem building OpenBLAS specifically :)

I see this same problem mentioned here as well.  Maybe it will help:
https://github.com/JuliaLang/julia/issues/30696

I'm not sure I understand the patch on that issue that mentions
cross-compiling to a 32-bit architecture.  You're clearly not doing
that, and you do have the NO_AVX512 macro defined.

it is first trying to build openblas for skylake architecture,
and errors out. This could indicate an old as, a.k.a. gas (GNU assembler), which usually comes from binutils.
Do you really have a skylake CPU, so it is not a misconfiguration by openblas?

What is your as version?

Then it tries to build for some dumb architecture, and errors out, perhaps as this option is not tested much, and so it broken in some way.


Charles Campbell

unread,
Jun 3, 2019, 5:29:53 PM6/3/19
to sage-devel


Hello: I do have a skylake architecture (10-core, i9-7900X), and the assembler is as: GNU assembler version 2.27-34.base.el7.  Unfortunately make -j1 openblas also gave the same error message.  I tried ./configure with_blas=atlas, and got: a new error!  (that seems like an improvement, actually)

mesg from compiler:
* package: gsl-2.5
  log file: /home/cecbkup/SW/SAGE/sage-8.7/logs/pkgs/gsl-2.5.log

The logged message that "C compiler cannot create executables" seems a bit odd -- I create executables with the c compiler all the time.  Does it need root privileges?
  build directory: /home/cecbkup/SW/SAGE/sage-8.7/local/var/tmp/sage/build/gsl-2.5


The f
gsl-2.5.log

Dima Pasechnik

unread,
Jun 4, 2019, 6:59:05 AM6/4/19
to sage-devel
On Mon, Jun 3, 2019 at 10:29 PM Charles Campbell <cec...@gmail.com> wrote:
>
>
>
> Hello: I do have a skylake architecture (10-core, i9-7900X), and the assembler is as: GNU assembler version 2.27-34.base.el7.

your GNU assempler (released in 2016)
https://mirror.koddos.net/gnu/binutils/
is older than your CPU (released in 2017).
https://en.wikichip.org/wiki/intel/core_i9/i9-7900x
I suppose openblas tries to use all the available features of this
CPU, but it fails due to old assembler.
An upgrade seem to be overdue.




> Unfortunately make -j1 openblas also gave the same error message. I tried ./configure with_blas=atlas, and got: a new error! (that seems like an improvement, actually)
>
> mesg from compiler:
> * package: gsl-2.5
> log file: /home/cecbkup/SW/SAGE/sage-8.7/logs/pkgs/gsl-2.5.log
>
> The logged message that "C compiler cannot create executables" seems a bit odd -- I create executables with the c compiler all the time. Does it need root privileges?
> build directory: /home/cecbkup/SW/SAGE/sage-8.7/local/var/tmp/sage/build/gsl-2.5
>
>
> The f
>
> --
> 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 post to this group, send email to sage-...@googlegroups.com.
> Visit this group at https://groups.google.com/group/sage-devel.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/62b6129f-cc43-4ef4-9e85-02e7395b0216%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages