Genero Studio-specific environment variables

This section lists and describes all Genero Studio-specific environment variables.

See the topic Genero environment variables in the Genero Business Development Language User Guide for Genero-specific environment variables such as FGLDIR, FGLGUI, and FGLPROFILE.


The DB_SQL_DELIMITER variable specifies the delimiters in an SQL database in cases where a table, view or column name contains a space, special character, or reserved SQL keyword. The specified delimiter depends on the database vendor:
  • For SQLServer, set the DB_SQL_DELIMITER value to square brackets with a space between:
    Type  = value
    Value = [ ]
  • For MySQL, set the DB_SQL_DELIMITER value to a single quotation mark:
    Type  = value
    Value = '
  • When no delimiter is specified, the DB_SQL_DELIMITER value defaults to double quotes:
    Type  = value
    Value = "
    As double quotes are the default, you do not need to set a value for DB_SQL_DELIMITER if your database vendor uses double quotes to handle these items.

If both the start and end delimiter are the same symbol, only specify that symbol once in the DB_SQL_DELIMITER environment variable, as shown by the example for MySQL.


The GMADIR environment variable defines the installation directory of Genero Mobile for Android™ (GMA).


The GMIDIR environment variable defines the installation directory of Genero Mobile for iOS (GMI).


The GMIUSERDIR environment variable specifies a directory from which all files will be copied into the gmi directory (a child of the distribution directory) when packaging a GMI application from within Genero Studio.

This variable is specific to Genero Studio, and only comes into play when creating a GMI application package. When you create a GMI application package, the gmibuildtool is being used under the covers.

The gmi directory is a child of the distribution directory. When building an .ipa package, the gmibuildtool searches for a gmi directory in the distribution directory. If it finds a gmi directory, then it will use the Info.plist and icon files found in this directory to build the package.

Add this environment variable to your configuration or specify it for a package node. Its primary use is to specify a custom Info.plist file to be used during the GMI build process, and to customize the PrivacyInfo.xcprivacy manifest file. Modifying the Info.plist file may be necessary if a property is not visible from GST. It is a fallback process and should only be used in last resort. For more information on the PrivacyInfo.xcprivacy manifest file, go to Privacy manifest files on the Apple® developers website.

For a detailed explanation of the required directory structure for a GMI application, the role of the gmi directory, and the purpose of the Info.plist file, refer to the Building iOS apps with Genero topic in the Genero Business Development Language User Guide.


The GMIEXTDIR environment variable indicate the location of the iOS extensions to be taken into account when building Genero Mobile for iOS (GMI) packages from within Genero Studio.

The extensions must be compiled before they are put into the GMIEXTDIR directory.

For example, rather than having a .m file (uncompiled version), you need to provide a static library with a .a extension. For example, if you have a file frontcalls.m, you first must compile the file by using the Makefile-gmi generic makefile:
make -f "$GMIDIR/lib/Makefile-gmi" USER_LIBNAME=frontcalls.a staticlib

This command creates the file frontcalls.a, which is the file to be placed in GMIEXTDIR.

This command provides a mechanism for implementing the --extension-libs option of the gmibuildtool. For more information about this option or about compiling the required static libraries, see the section Building a GMI app with C extensions or custom front calls in the Building iOS apps with Genero topic of the Genero Business Development Language User Guide.


The GSTDIR environment variable defines the Genero Studio installation directory.


The GSTLIBRARYDIR environment variable defines the location of the libraries used with the database generation script. By default, this environment variable is set in the Studio Libraries environment set.


The GSTSCHEMANAMES environment variable defines the schema files (4db, 4dbx, sch) to be loaded by default into the Meta-schema Manager when Genero Studio is launched. Available meta-schemas are displayed in the DB Schemas tab, and available to Genero Studio components such as Form Designer.

Use the GSTSCHEMANAMES environment variable to specify global schemas.

Although you can specify global schemas, it is recommended that you add schemas to projects instead. Schemas added to projects are loaded when the project is opened, not at Genero Studio launch. Project can also be available to all developers without any additional configuration needed.

Select the default environment set (Global Database Schemas) or create a new one that includes the GSTSCHEMANAMES environment variable. Set the GSTSCHEMANAMES environment variable to specify the file names of the schemas to make available. Use the Value List environment variable type to list multiple schemas, separated by semicolons. Do not include the file extension.

Use FGLDBPATH to define the directories in which to find the schema files listed in the GSTSCHEMANAMES variable.


The GSTSETUPDIR environment variable specifies the directory that defines a specific setup for Genero Studio.

The specific setup of Genero Studio includes:
  • File associations.
  • Build rules.
  • The File > New menu entries (in creatables.conf) .
  • Additional properties for project definitions (in pm_settings.conf).
  • Custom diagram entries and properties (in settings.agconf).
  • BAM setup templates and files.

When in a remote Genero Studio configuration, this setup directory is located on the server side and is synchronized with the client to have same settings on both sides.

To quickly identify the setup directory for your current Genero Studio configuration, select Tools > Specific setup > Locate setup directory. The directory defined by GSTSETUPDIR is highlighted in the File Browser (the Files view).

If you want to create your own Genero Studio setup, modify this variable to point to your own setup directory.

For your convenience, each iteration of the BAM templates have a default environment set created using the naming convention "Template dbapp*", where * represents the template version number. If you want to alter the BAM setup, you can make a copy of the GSTSETUPDIR directory defined by the "Template dbapp*" environment set and alter the copy.


The GSTUSERDIR environment variable defines the directory where Genero Studio stores data related to the current user.

Such data includes user-related settings, log files, and client-server data.

On Windows® operating systems, this refers to \Users\<username>\AppData\Roaming\FourJs\Genero Studio <version>/.

On Linux® and Mac® operating systems, this refers to $HOME/.fourjs/Genero Studio <version>/.


The GSTUSERSAMPLESDIR environment variable defines the installation directory for the Genero Studio demo samples.

GSTUSERSAMPLESDIR is typically used when setting other environment variables.

By default, the GSTUSERSAMPLESDIR is not used in Genero Enterprise v3.0.


The GSTTERM environment variable defines the command to open a terminal on a Linux system.


The GSTWCDIR environment variable defines the directory in which the web component XML files (.wcsettings) and optional image files are stored. By default this environment variable is set in the Web Components environment set.

Set GSTWCDIR to your web component directory where the .wcsettings and the optional image files reside. The Web Components files themselves may reside in a separate directory for deployment.

Each of the .wcsettings XML files describes a single web component object.

When you have set this directory, you may add a WebComponent widget to your form design document. The components described in the .wcsettings files will be available in the combobox list of the componentType property in the Properties view, allowing you to specify the particular web component to add to the form.