Distribution and Deployment for Linux

Core Requirements

Base a Linux deployment on the package supplied for the target distribution and architecture. Keep the native runtime, configuration, interface files, and feature-specific libraries from the same TFORMer release.

  • Preserve the complete package-provided native-library chain in /usr/local/lib: libTFORMer9.so, its SONAME link, and the fully versioned target. Make the directory available to the platform dynamic-library loader.

  • TFORMer.xml
    Install the default configuration at /usr/local/share/TFORMer9/TFORMer.xml. For a custom location, specify the file with TFormer_SetConfigFile() or place it in the application or TFORMer runtime directory.

The exact system-library package names depend on the target distribution. The current Debian 12 x86-64 runtime links directly to these library families:

  • LibXml2: libxml2.so.2
  • LibXslt: libxslt.so.1
  • FreeImage: libfreeimage.so.3
  • FreeType: libfreetype.so.6
  • Fontconfig: libfontconfig.so.1
  • ZLib: libz.so.1
  • POCO Foundation, Util, Net, Crypto, JSON, and NetSSL: libPoco*.so.80
  • OpenSSL Crypto: libcrypto.so.3
  • Standard C, C++, math, GCC, and Linux loader runtimes

Install the matching libraries through the target distribution. Use the installed support.sh script to inspect the libraries resolved on the deployment system.

Additional libraries are loaded for selected features:

  • LibArt LGPL: libart_lgpl_2.so.2 (or the unversioned fallback) is required by the Linux image renderer.
  • CUPS is required for direct printing to Linux printers; file output does not require CUPS.
  • UnixODBC is required only when the application uses ODBC/SQL data input.

Third-party Notices

Keep the supplied copyright, license notices and credits with the components you redistribute. The SDK package provides third-party notices in its Copyright directory. Use the notices from the same release and preserve those accompanying any additional libraries you distribute; the Windows file list is not a Linux deployment manifest.

Licensing

For license types, validity, confidentiality and API examples, see Licensing.

Automatic License Lookup on Linux

TFORMer SDK searches for TFORMer.ini in this order:

  1. The application executable's directory.
  2. The TFORMer runtime library directory.
  3. The shared configuration directory, normally /usr/local/share/TFORMer9/.

Automatic lookup uses the first successfully read license data, even if that license has expired. Later locations are then ignored.

For a custom location, use the selected interface's explicit license-file method. TFPrint users can use -L file:<path>.

API Specific Requirements

Native C API

Deploy the complete package-provided libTFORMer9.so chain, including its SONAME link and fully versioned target. For development, use the headers below /usr/local/include/TFORMer9/ and link with -L/usr/local/lib -lTFORMer9.

.NET API

The Linux package installs two managed assemblies in /usr/local/lib:

  • TECIT.TFORMer.dll, referenced by the packaged .NET 8 command-line sample
  • TECIT.TFORMer.Std.dll, the .NET Standard 2.0 assembly

Deploy the assembly that matches the selected API target together with the native TFORMer runtime from the same release.

Java API

For Java on Linux, deploy both interface components from the same release:

  • JTFORMer9.jar
  • the complete package-provided libTFORMer9JNI.so chain, including its SONAME link and fully versioned target

Make /usr/local/lib available through java.library.path or the platform dynamic-library loader. The current JAR targets Java 8 bytecode.

Requirements for PostScript/HTML Output

Deploy the output resources for every output path used by your application. The Linux package installs these files together with TFORMer.xml under /usr/local/share/TFORMer9/. Relative resource names are resolved through the TFORMer runtime/configuration search path.

  • PostScript output

    • header.ps provides the PostScript page header.
    • footer.ps provides the PostScript page footer.
  • HTML output

    • template.html provides the generated HTML index template.
    • footer.html provides the footer links appended to generated HTML pages.

Distribution of TFORMer Document Layouts

For the layout files and associated resources to include in your deployment, see Distribution of TFORMer Document Layouts in the Windows deployment chapter. The file-packaging requirements also apply to Linux; preserve the repository directory structure and references to external resources.

Search documentation

Search in
More scopes
Additional scopes

All contents