GRASS GIS 8 Programmer's Manual 8.4.1(2025)-45ca3179ab
Loading...
Searching...
No Matches
gisbase.c
Go to the documentation of this file.
1/**********************************************************************
2 *
3 * char *
4 * G_gisbase()
5 *
6 * returns: pointer to string containing the base directory of
7 * GRASS-GRID
8 **********************************************************************/
9
10#include <grass/gis.h>
11
12/*!
13 * \brief Get full path name of the top level module directory
14 *
15 * Returns the full path name of the top level directory for GRASS
16 * programs. This directory will have subdirectories which will
17 * contain modules and files required for the running of the
18 * system. Some of these directories are:
19
20 \verbatim
21 bin commands run by the user
22 etc modules and data files used by GRASS commands
23 \endverbatim
24
25 * The use of G_gisbase() to find these subdirectories enables GRASS
26 * modules to be written independently of where the GRASS system is
27 * actually installed on the machine. For example, to run the module
28 * <i>sroff</i> in the GRASS <i>etc</i> directory:
29
30 \code
31 char command[200];
32
33 sprintf(command, "%s/etc/sroff", G_gisbase());
34 G_spawn(command, "sroff", NULL);
35 \endcode
36 *
37 * \return pointer to a string
38 */
39const char *G_gisbase(void)
40{
41 return G_getenv("GISBASE");
42}
const char * G_getenv(const char *name)
Get environment variable.
Definition env.c:360
const char * G_gisbase(void)
Get full path name of the top level module directory.
Definition gisbase.c:39