Step by step tutorial on how to use PARI/GP development version in Sage

This tutorial explains how to use a PARI/GP development version inside Sage. This is currently a bit hackish and the aim is to have this possibility natively supported (see this thread on sage-devel.


  1. We assume that your PARI/GP source code is at $PARI_ROOT

  2. You need version of Sage compiled from source that is run with the command sage


  1. Download the script

  2. Start Sage environment

    $ cd $PARI_ROOT
    $ sage -sh                # starts Sage environment
  3. Optional step: apply Sage patches located in $SAGE_ROOT/build/pkg/pari/patches.

  4. Compile pari

    $ cd $PARI_ROOT
    $ make clean              # start with a clean slate
    $ source     # reading
    $ pari_set_environment    # setting properly environment variables for compilation
    $ pari_build              # building pari
    $ pari_install            # installing pari
  5. Recompile cysignals

    $ sage -f cysignals       # recompile cysignals (to be linked correctly against pari)
  6. Compile the last version of cypari (this currently breaks, but this pull request fixes it)

    $ sage -pip install git+
  7. Recompile what needs to be

    $ sage -br

Procedure to restore the standard PARI package in Sage

  1. $ sage -f pari
    $ sage -f cysignals
    $ sage -f cypari
    $ sage -br

PariDevInSage (last edited 2017-08-03 08:15:11 by vdelecroix)