Differences between revisions 2 and 5 (spanning 3 versions)
Revision 2 as of 2010-03-13 12:46:38
Size: 1395
Editor: BurcinErocal
Comment: shorter URL
Revision 5 as of 2017-03-22 02:05:19
Size: 0
Editor: mrennekamp
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from symbolics/pynac_start
= Getting started with Pynac development =

[[http://pynac.sagemath.org|Pynac]] is a C++ library for symbolic manipulation based on [[http://www.ginac.de|GiNaC]]. It can use arbitrary Python objects for numeric types. Since Pynac is closely tied to Sage, setting up a development environment and finding your way around initially can be troublesome. This is a short tutorial to provide help with the first steps.

GiNaC has great documentation. It's a good idea to read the [[http://www.ginac.de/tutorial/|tutorial]] to get familiar with the library. The [[http://www.ginac.de/reference/|reference manual]] for GiNaC can also be useful to find your way around.

In order to start working on the source code go to your `SAGE_ROOT` and run
{{{
./sage -f -m spkg/standard/pynac-*.spkg
}}}

This will install the latest version of Pynac that comes with Sage and leave the package files in the directory `spkg/build/pynac-<version>`. You will find the Pynac sources in `spkg/build/pynac-<version>/src`, most files you'll want to work on are in the subdirectory `ginac`.

After you make changes to the Pynac files, in order to build your changes and install them so Sage will see them, get in a Sage shell with

{{{
./sage -sh
}}}
Go to the Pynac source directory
{{{
cd spkg/build/pynac-*/src
}}}
and run
{{{
make install
}}}