4suite.org Powered by 4Suite
4Suite Installation Locations

4Suite Installation Locations

When 4Suite is installed, its files are placed in various locations. These locations vary according to the version of 4Suite, the platform, and the method of installation. This document summarizes the default installation locations, and provides information on how to customize the locations when building from source.

This document last updated 19 November 2004. Please report errors or ask questions via <4suite@4suite.org> (it will appear on the 4suite mailing list).



4Suite 1.0a4 and newer

When building from source, a directory layout can be chosen before installing by running setup.py config with the appropriate options. Default directories for a standard layout can be manually overridden this way, as well. The main options are documented here, but see setup.py config ‑‑help for the complete set.

POSIX platforms
(Linux, FreeBSD, Mac OS X, Solaris, Cygwin)

the “FHS local” layout

  • Default when 4Suite is built & installed from source.
  • Mostly compliant with the Filesystem Hierarchy Standard.
  • Can be forced by setting the ‑‑local option on setup.py config.
  • VERSION is the version string defined in setup.py; it varies with the version of 4Suite.
  • PYTHONLIB is usually the Python site-packages directory. It varies with the Python installation that is interpreting setup.py. If there a python interpreter under /usr/local/lib is in the installing user's PATH, its site-packages directory will be used, even if a different interpreter is running setup.py.
4Suite files override default location
User executables
(4rdf, 4ss, 4ss_manager, 4ssd, 4versa, 4xml, 4xpath, 4xslt, 4xupdate)
‑‑bindir /usr/local/bin
Read‑only platform‑independent data
(XML catalogs & schemas, repository resource sources)
‑‑datadir /usr/local/share/4Suite
Read-only host‑specific data
(repository config file)
‑‑sysconfdir /usr/local/etc
Modifiable host‑specific data
(default FlatFile database for repository)
‑‑localstatedir /var/local/lib/4Suite
Program & package libraries
(test suites)
‑‑libdir /usr/local/lib/4Suite
Documentation
(stock & generated XML, HTML, text docs)
‑‑docdir /usr/local/share/doc/4Suite‑VERSION
Third-party Python libraries
(Ft.* modules)
‑‑pythonlibdir PYTHONLIB (site-packages)
Message catalogs
(*.po files)
‑‑localedir /usr/local/share/locale

the “FHS system” layout

  • Linux RPMs distributed from 4suite.org use this layout.
  • Mostly compliant with the Filesystem Hierarchy Standard.
  • Select by setting the ‑‑system option on setup.py config.
  • VERSION is the version string defined in setup.py; it varies with the version of 4Suite.
  • PYTHONLIB is usually the Python site-packages directory. It varies with the Python installation that is interpreting setup.py. If there a python interpreter under /usr/lib (not /usr/local/lib) is in the installing user's PATH, its site-packages directory will be used, even if a different interpreter is running setup.py.
4Suite files override default location
User executables
(4rdf, 4ss, 4ss_manager, 4ssd, 4versa, 4xml, 4xpath, 4xslt, 4xupdate)
‑‑bindir /usr/bin
Read‑only platform-independent data
(XML catalogs & schemas, repository resource sources)
‑‑datadir /usr/share/4Suite
Read-only host‑specific data
(repository config file)
‑‑sysconfdir /etc
Modifiable host‑specific data
(default FlatFile database for repository)
‑‑localstatedir /var/lib/4Suite
Program & package libraries
(test suites)
‑‑libdir /usr/lib/4Suite
Documentation
(stock & generated XML, HTML, text docs)
‑‑docdir /usr/share/doc/4Suite‑VERSION
Third-party Python libraries
(Ft.* modules)
‑‑pythonlibdir PYTHONLIB (site-packages)
Message catalogs
(*.po files)
‑‑localedir /usr/share/locale

the “POSIX home” layout

  • A one-prefix scheme for a completely isolated installation.
  • Puts all files under one root (e.g. a user's home directory).
  • A good choice for sandboxed developers and non-superusers.
  • Select by setting the ‑‑home=PREFIX option on setup.py config.
  • A leading "~" in the prefix will be expanded, e.g. ‑‑home='~username/4Suite' should work just as well as ‑‑home=/home/username/4Suite.
4Suite files override default location
User executables
(4rdf, 4ss, 4ss_manager, 4ssd, 4versa, 4xml, 4xpath, 4xslt, 4xupdate)
‑‑bindir PREFIX/bin
Read‑only platform-independent data
(XML catalogs & schemas, repository resource sources)
‑‑datadir PREFIX/share/4Suite
Read-only host‑specific data
(repository config file)
‑‑sysconfdir PREFIX/share/etc/4Suite
Modifiable host‑specific data
(default FlatFile database for repository)
‑‑localstatedir PREFIX/share/var/4Suite
Program & package libraries
(test suites)
‑‑libdir PREFIX/lib/4Suite
Documentation
(stock & generated XML, HTML, text docs)
‑‑docdir PREFIX/share/doc/4Suite‑VERSION
Third-party Python libraries
(Ft.* modules)
‑‑pythonlibdir PREFIX/lib/python
Message catalogs
(*.po files)
‑‑localedir PREFIX/share/locale

the “POSIX autoconf” layout

  • A two-prefix scheme based on GNU autoconf defaults.
  • Allows executables & libraries to exist under one root;
  • Allows data & docs to exist under another root.
  • Select by setting the ‑‑prefix=PREFIX option on setup.py config.
  • EXECPREFIX defaults to the same value as PREFIX, unless given via the ‑‑execprefix config option.
  • VERSION is the version string defined in setup.py; it varies with the version of 4Suite.
  • PYTHONLIB is usually the Python site-packages directory; it varies with the Python installation that is interpreting setup.py.
4Suite files override default location
User executables
(4rdf, 4ss, 4ss_manager, 4ssd, 4versa, 4xml, 4xpath, 4xslt, 4xupdate)
‑‑bindir EXECPREFIX/bin
Read‑only platform-independent data
(XML catalogs & schemas, repository resource sources)
‑‑datadir PREFIX/share/4Suite
Read-only host‑specific data
(repository config file)
‑‑sysconfdir PREFIX/etc/4Suite
Modifiable host‑specific data
(default FlatFile database for repository)
‑‑localstatedir PREFIX/var/4Suite
Program & package libraries
(test suites)
‑‑libdir EXECPREFIX/lib/4Suite
Documentation
(stock & generated XML, HTML, text docs)
‑‑docdir PREFIX/share/doc/4Suite‑VERSION
Third-party Python libraries
(Ft.* modules)
‑‑pythonlibdir PYTHONLIB (site-packages)
Message catalogs
(*.po files)
‑‑localedir PREFIX/share/4Suite/locale

Windows NT family
(XP, 2000, Server 2003, NT4)

When installing a prebuilt package for Windows with a .exe installer, the administrator is prompted to select a registered standard Python installation into which 4Suite should be installed. The root directory of the selected installation (e.g., C:\Python23), is the PREFIX in the default locations below.

When building from source on Windows, PREFIX defaults to the value of sys.prefix as reported by Python. It can be overridden via the ‑‑prefix=DIR option on setup.py config.

the “nt” layout

  • Default when building on the Windows platforms listed above.
  • Puts all files under one root.
  • PREFIX is typically the Python home directory, e.g. C:\Python23.
  • VERSION is the version string defined in setup.py; it varies with the version of 4Suite.
4Suite files override default location
User executables
(4rdf, 4ss, 4ss_manager, 4ssd, 4versa, 4xml, 4xpath, 4xslt, 4xupdate)
‑‑bindir PREFIX\Scripts
Read‑only platform-independent data
(XML catalogs & schemas, sources for core repository resources)
‑‑datadir PREFIX\Share\4Suite
Read-only host‑specific data
(repository config file)
‑‑sysconfdir PREFIX\Share\Settings\4Suite
Modifiable host‑specific data
(default FlatFile database for repository)
‑‑localstatedir PREFIX\Share\4Suite
Program & package libraries
(test suites)
‑‑libdir PREFIX\Share\4Suite
Documentation
(stock & generated XML, HTML, text docs)
‑‑docdir PREFIX\Share\Doc\4Suite‑VERSION
Third-party Python libraries
(Ft.* modules)
‑‑pythonlibdir PREFIX\Lib\site-packages

…or in Python 2.1, just PREFIX (However, Python 2.1 support was officially dropped in 4Suite CVS snapshots effective 2004-02-13, which was prior to the 1.0a4 release)
Message catalogs
(*.po files)
‑‑localedir PREFIX\Share\Locale

untested

other platforms
(Windows 95, 98, ME)

the “other” layout

  • Default when building on the Windows platforms listed above.
  • Puts all files under one root.
  • PREFIX is typically the Python home directory, e.g. C:\Python23.
  • VERSION is the version string defined in setup.py; it varies with the version of 4Suite.
4Suite files override default location
User executables
(4rdf, 4ss, 4ss_manager, 4ssd, 4versa, 4xml, 4xpath, 4xslt, 4xupdate)
‑‑bindir PREFIX\Scripts
Read‑only platform-independent data
(XML catalogs & schemas, sources for core repository resources)
‑‑datadir PREFIX\Share\4Suite
Read-only host‑specific data
(repository config file)
‑‑sysconfdir PREFIX\Share\Settings\4Suite
Modifiable host‑specific data
(default FlatFile database for repository)
‑‑localstatedir PREFIX\Share\4Suite
Program & package libraries
(test suites)
‑‑libdir PREFIX\Share\4Suite
Documentation
(stock & generated XML, HTML, text docs)
‑‑docdir PREFIX\Share\Doc\4Suite‑VERSION
Third-party Python libraries
(Ft.* modules)
‑‑pythonlibdir PREFIX\Lib\site-packages
Message catalogs
(*.po files)
‑‑localedir PREFIX\Share\Locale

untested


4Suite 0.12.0a1 through 1.0a3

The installation options in these releases were customizable, but relatively limited. Also, there were various changes from release to release, and it is hard to document them all.

In general, when building from source on POSIX, executable scripts ended up in /usr/local/bin, and everything else ended up in Python's site-packages/Ft directory. The Linux RPMs distributed from 4suite.org put the executables in /usr/bin.

POSIX platforms
(Linux, FreeBSD, Mac OS X, Solaris, Cygwin)

Options available to setup.py install included the following. The defaults and interaction between them is not yet documented.

  • --root=ROOTDIR
  • --prefix=PREFIX
  • --exec-prefix=EXECPREFIX (POSIX only)
  • --home=HOMEDIR (POSIX only)
  • --install-base=BASEDIR (instead of --prefix or --home)
  • --install-platbase=PLATBASEDIR (instead of --exec-prefix or --home)
  • modules; override with --install-lib=LIBDIR, or override pure Python module destination with --install-purelib=PURELIBDIR and non-pure module destination with --install-platlib=PLATLIBDIR.
  • C/C++ headers; override with --install-headers=HEADERDIR
  • Python scripts; override with --install-scripts=SCRIPTDIR
  • data files; override with --install-data=DATADIR
  • documentation; override with --install-docs=DOCDIR. The building of documentation could not be disabled when building 0.12.0a1 from source. Documentation could also be installed in any location by unpacking a separate tarball.
  • test suites; override with --install-tests=TESTDIR

Mac OS X and Cygwin support was spotty in these versions of 4Suite.

Windows NT family
(XP, 2000, Server 2003, NT4)

PYTHONHOME, below, is the Python base directory, e.g. C:\Python21.

  • Under Python 2.1, everything installed into PYTHONHOME\Ft.
  • Under Python 2.2 or 2.3, everything installed into PYTHONHOME\Lib\Ft.

untested

other platforms
(Windows 95, 98, ME)

(Undocumented for now)

untested


4Suite 0.11.1

POSIX platforms
(Linux, FreeBSD)

Installation locations were as shown below. PYTHONLIB represents the Python site-specific library directory, e.g. /usr/local/lib/python2.1/site-packages.

  • user executables: (4xslt, 4rdf, 4odb, 4xupdate): /usr/local/bin
  • 4XPath modules (xml.xpath.*): PYTHONLIB/_xmlplus/xpath - Note that PyXML's xml.xpath, if installed, will be clobbered. The net effect is that installing 4Suite results in PyXML's xml.xpath being updated to support Domlette in addition to minidom.
  • 4XSLT modules (xml.xslt.*): PYTHONLIB/_xmlplus/xslt - Note that PyXML's xml.xslt, if installed, will be clobbered. The net effect is that installing 4Suite results in PyXML's xml.xslt being updated to support Domlette in addition to minidom.
  • other modules (Ft.Ods, Ft.Rdf, Ft.Lib, etc.): PYTHONLIB/Ft
  • 4XPath message catalogs (*.po files): PYTHONLIB/_xmlplus/xpath - in subdirectories by locale name
  • 4XSLT message catalogs (*.po files): PYTHONLIB/_xmlplus/xslt - in subdirectories by locale name
  • documentation, test suites, demos, profiling code: /usr/local/doc/4Suite-0.11.1

Windows NT family
(XP, 2000, Server 2003, NT4)

(Undocumented for now)

untested

other platforms
(Windows 95, 98, ME)

(Undocumented for now)

untested

Home |  Copyright |  Downloads
Comments about the site? Email the webmaster.