SourceCode

This directory contains occasional source releases. Tarfiles available here may eventually be deleted, but they will not be changed; they don't have to be changed, because the names of the files incorporate the Macaulay2 version number.

However, the best way to get the source code is with a client for git, the source code control system we use. To get (or to view) the latest version of the source code, possibly with bugs, visit https://github.com/Macaulay2/M2 and press the "ZIP" or "Clone" buttons. Alternatively, run this command in a new directory:

        git clone https://github.com/Macaulay2/M2

The result will be a directory named M2 containing the source code directory tree of Macaulay2, checked out from the branch called "stable". Active development occurs on the "development" branch, and all pull requests on GitHub should be submitted to this branch. Other branches are used for development of numbered releases (e.g., "release-1.22-branch"), and there are tags that label stable versions of those branches (e.g., "release-1.22").


After getting the source code as described above, and assuming the directory is now named "M2", you may build Macaulay2 from it as follows. First do

	 cd M2
	 ./autogen.sh

That initial step will create the "configure" script.

Then do something like

	 cd BUILD/build
	 ../../configure --prefix=/usr/local
	 make
	 sudo make install

to compile and install the code. You may replace /usr/local by $HOME/local, for example, if you don't have root privileges..

The command

	 ../../configure --help

will explain the options can be passed to the configure script.

You may refer to the wiki for some more detailed instructions about this installation.