Opened 2 years ago

Closed 2 years ago

#30718 closed enhancement (fixed)

build/pkgs/pynac/dependencies: Remove giac

Reported by: Matthias Köppe Owned by:
Priority: major Milestone: sage-9.3
Component: packages: standard Keywords: dependencies, giac, pynac
Cc: Dima Pasechnik, John Palmieri, Thierry Thomas, Michael Orlitzky, Tobias Diez Merged in:
Authors: Matthias Koeppe Reviewers: John Palmieri
Report Upstream: N/A Work issues:
Branch: 9c5f559 (Commits, GitHub, GitLab) Commit: 9c5f5597207277d105344eac97fb9b97e1e3a3dd
Dependencies: Stopgaps:

Status badges

Description (last modified by Samuel Lelièvre)

As noted in #21700, our pynac spkg-install script explicitly disables use of giac. So that should not be a dependency.

Removing the dependency allows for greater parallelization of the build.

This is also a step toward allowing to build Sage with ./configure --without-giac (see #30383 - configure --disable-SPKG for standard packages).

See also:

  • #29542 spkg-configure.m4 for pynac

Change History (12)

comment:1 Changed 2 years ago by Matthias Köppe

Branch: u/mkoeppe/build_pkgs_pynac_dependencies__remove_giac

comment:2 Changed 2 years ago by Matthias Köppe

Authors: Matthias Koeppe
Commit: 9c5f5597207277d105344eac97fb9b97e1e3a3dd
Status: newneeds_review

New commits:

9c5f559build/pkgs/pynac/dependencies: Remove giac

comment:3 Changed 2 years ago by John Palmieri

This looks okay, but something is wrong with other dependencies. With this branch, make pynac works. With the current develop branch, make pynac fails (on OS X + homebrew) because giac fails to build:

checking for lapack... no
configure: error: Package requirements (lapack) were not met:

No package 'lapack' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables LAPACK_CFLAGS
and LAPACK_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

Running plain "make" works, I guess because something gets built before giac which provides whatever it needs.

comment:4 Changed 2 years ago by John Palmieri

Reviewers: John Palmieri
Status: needs_reviewpositive_review

comment:5 Changed 2 years ago by Matthias Köppe

The giac dependencies look fine - it depends on gsl, which depends on BLAS

comment:6 Changed 2 years ago by John Palmieri

I have homebrew packages for openblas and gsl, so Sage doesn't build those. I see this error on two different machines running OS X 10.15.7, Xcode 12, and a pretty complete homebrew installation (the only thing that Sage's configure complains about is cmake). If you have access to such a machine, try make distclean; ./configure; make giac. I'm curious about how it goes.

comment:7 Changed 2 years ago by Matthias Köppe

Yes, confirmed on my system (still with Xcode 11)

comment:8 Changed 2 years ago by Matthias Köppe

Doing make toolchain first fixes this problem.

comment:9 in reply to:  8 Changed 2 years ago by John Palmieri

Replying to mkoeppe:

Doing make toolchain first fixes this problem.

Followup at #30721.

Last edited 2 years ago by John Palmieri (previous) (diff)

comment:10 Changed 2 years ago by Samuel Lelièvre

Description: modified (diff)
Keywords: dependencies giac pynac added

comment:11 Changed 2 years ago by Matthias Köppe

Milestone: sage-9.2sage-9.3

comment:12 Changed 2 years ago by Volker Braun

Branch: u/mkoeppe/build_pkgs_pynac_dependencies__remove_giac9c5f5597207277d105344eac97fb9b97e1e3a3dd
Resolution: fixed
Status: positive_reviewclosed
Note: See TracTickets for help on using tickets.