PGOPHER is mainly written in Pascal, using the object oriented extensions originally available from the Borland Pascal compiler and also available in the Free Pascal compiler (not GNU Pascal). The program is distributed as a zip file. Unpack this in a directory on its own, which will create several sub-directories.
The current version is compiled with Embarcadero (originally
Borland, then Codegear) Delphi 2007 (32 bit version) and XE10
(64 bit version), though it should compile with any version
after 2006, possibly with minor modifications. The mkpgopher.bat file in
directory will compile it from the command line. Alternatively
install the utils/PutilsU.dpk
packages into the IDE (utils/Putils.dpk
for Delphi 2007 or earlier),
after which the pgopher/PgopherU.dpr
Delphi 2007 or earlier) project can be loaded and compiled in
the IDE. Note that various open source graphics libraries are
required for a complete build for 32 bit versions; these are
included in the GraphicEx directory. The files with
"orig" in the name are the files as distributed with the
library. The pgopher/pgoU.dpr (pgopher/pgo.dpr)
are for the command line version.
Compilation using the open source Free Pascal
(http://www.freepascal.org) and Lazarus
(http://www.lazarus.freepascal.org) packages is also possible
under Windows. Installing the current Lazarus snapshot
gives a good starting point though the development version may be
required for correct operation, particularly for Lazarus. There is
a helpful wiki page on the Lazarus site at http://wiki.lazarus.freepascal.org/index.php/Installing_Lazarus
on installing both the compiler and Lazarus. Once the Lazarus IDE
and the PGOPHER source
are installed, the instructions are as for Linux below.
svn co https://svn.code.sf.net/p/lazarus-ccr/svn/components/fpspreadsheet fpspreadsheetand open fpspreadsheet/laz_fpspreadsheet.lpk in the IDE. (Install is not required.). If you omit this step, some minor editing of the lutils package will be required; remove the dependency on fpspreadsheet and delete XLSLoader.pas.
or, for the command line version:lazbuild pgopher.lpi
If you don't have a recent Lazarus install, then try the makesvn script which will download and compile the current development version of the compiler and IDE, and then set up the IDE to compile PGOPHER, and use it to compile PGOPHER. It requires a bootstrap version of the compiler to start with, and the pgopher_source zip file, both in your home directory. The simplest way of obtaining this bootstrap compiler is probably to install the version of Lazarus using your distribution's package system, copy the core compiler (ppc386 or ppcx64) to your home directory and then uninstall Lazarus (to avoid confusion between versions). Alternatively, extract the file from a download for your system from http://www.freepascal.org. Given this, run the makesvn script.lazbuild pgo.lpi
Modifications and subsequent compilations can be made through
the Lazarus IDE; use startlazarus to launch it. On
first starting it you may receive a message about upgrading
configurations on starting the IDE - just accept the upgrade.
Compilation on the Mac is similar to the process on Linux. See the "Installing Free Pascal under Mac OS X" section in the Lazarus wiki page at:
for more details. Compiling PGOPHER is then as for Linux.
PGOPHER uses slightly modified versions of selected parts of the LAPACK library to diagonalize matrices. Precompiled versions of these (using g77 or gfortran) are included with the source distribution, as these do not normally need to be recompiled. For systems other than Microsoft Windows this can normally be accomplished using the command:
make -f GNUmakefile