System Requirements for the GPSTk

This page describes what system utilities you will need to build the GPSTk. Utilities that are optional but recommended for developers are covered as well.

A Command Prompt

It is required to use the command line or terminal to build the GPSTk on all platforms. Furthermore, the command line is used extensively by many GPSTk applications.

For Windows users, the command line is sometimes referred to as "DOS prompt". There is also a popular alternative to the Windows Command Prompt provided by the Cygwin project. The Cygwin project provides a UNIX-like environment to Windows users. Many free software projects, such as gcc, are pre-built and can easily be installed using the Cygwin installer. Others can be built from source code to run in the Cygwin environment, including the GPSTk.

A Modern C++ Compiler

To use the GPSTk you must have a modern, ANSI compliant C++ compiler, such as the one provided with gcc. The GPSTk has been built successfully using the following compilers:

  • GCC version 3.3, 3.4, 4.0, 4.1 under Cygwin, Linux, Solaris and AIX (as of GPSTk 1.1 or later)
  • Microsoft Visual Studio .NET 2003, Visual C++ 2005 Express (as of GPSTK 1.3 or later)
  • Sun Workshop 6 and Sun ONE Studio 8 (as of GPSTk 1.0 or later)
  • OS X Xtools (as of GPSTK 1.5 or later)

Of course, at a minimum, to start using the GPSTk to create your own application, you will need to know how to compile a simple program, and how to link that program to a library. An example of simple program, including basic compiling and linking using the GCC compiler, is provided on this website.

Regular Expressions

The GPSTk uses regular expressions to perform some string manipulation. This support is currently included on all platforms except the Microsoft Visual C++ compiler. For this compiler, you must install some regex capability like PCRE (http://www.pcre.org/). You can find more detailed instructions on InstallingRegexSupportForVisualCPP

The Jam Utility

In addition to the compiler, you or your system administrator will need to install the jam utility, a replacement for make. Jam automates the tasks necessary to create and install the GPSTk software suite. Jam is cross-platform: it works equally well for GCC as for the MS compilers.

If you don't want to download and compile the jam program from source, then we have built these jam executables for a variety of development environments on the downloads page.

If you are running a Linux distribution, such as Debian or RedHat, there are jam packages you can install.

Boost jam

An alternative to perforce jam is boost jam. Here you can get the source or a precompiled version of bjam. In order to use the backwards compatibility feature of bjam to perforce jam, you must either copy and rename the bjam executable to jam (copy bjam.exe to jam.exe on windows) or create a symbolic link from jam to bjam (on unix: ln -s bjam jam ). Then you can treate jam the same as perforce jam. This has been tested to build the toolkit just as well as bjam.

Doxygen

If you want to build the latest library documentation, then you will need Doxygen. Doxygen is a cross-platform utility that builds API documentation directly from source.

GPSTk library API documentation in HTML is built and posted to the website with each stable release of the GPSTk. However, in the development versions of the GPSTk, the API may change without notice. If you use the development version of the GPSTk you will want to use Doxygen.

Application and Test Program Requirements

Each test program, script or application included with the GPSTk may require other utilities to be available and on the executable PATH. For example, to run the test suite under UNIX or Linux, you need a shell that is sh compatible (e.g., bash), as well as perl and gnuplot.

Because these dependencies vary by application, we will not list those dependencies here.

Latest Subversion Build Status

This table contains the build status of the source (in subversion) on a number of platforms. The developers at Applied Research Laboratories attempt to regularly compile the source code on different platforms using jam and make. The goal is to update this table every week with status reports for each platform tested. Hopefully this will aid the development team in finding bugs quickly and addressing them in a timely manner.

LAST UPDATED: 19 June 2009

  jam make
Linux 32-bit Yes Yes
Linux 64-bit Yes Yes
Solaris Yes No
Cygwin Yes No
Windows Yes NS
Macintosh Yes NT
  • NT - Not Tested
  • NS - Not Supported on this platform

 
WEBLOGOALT