Open Inventor Release 2024.2.1
 
Loading...
Searching...
No Matches
Java application on Linux

The following document gives the list of Open Inventor files that your Java application must embed on Linux.

All jar files of Open Inventor Java are located in the folder $OIVJHOME/jre/lib/ext where $OIVJHOME specifies the root folder where Open Inventor SDK is installed on your machine.

All required native libraries (.so files) of Open Inventor Java are located in the folder $OIVJHOME/jre/lib/amd64.

Those path are referred to as [...]/jre/lib/ext and [...]/jre/lib/amd64 in the rest of this document.

The required files that are described below must be copied in a targeted runtime folder of your application.

Note
You are not allowed to distribute any Open Inventor SDK files that are only used to debug your Java application. So do not copy any file from the folder $OIVJHOME/jre/amd64-debug

Inventor Core

kernel (always required)

Component Linux file name default path comments
Inventor com.openinventor.inventor.jar [...]/jre/lib/ext main jar of Open Inventor
libcom.openinventor.inventor.so [...]/jre/lib/amd64
libfei_inventor.so [...]/jre/lib/amd64
libfei_inventor_image.so [...]/jre/lib/amd64
libfei_inventor_gl.so [...]/jre/lib/amd64
libfei_inventor_renderengine.so [...]/jre/lib/amd64
libfei_inventor_computing_algorithms.so [...]/jre/lib/amd64
libfei_glew.so [...]/jre/lib/amd64
Inventor base libfei_inventor_base.so [...]/jre/lib/amd64
libfei_inventor_ui.so [...]/jre/lib/amd64
libfei_scaleViz.so [...]/jre/lib/amd64
libfei_zlib.so [...]/jre/lib/amd64
libfei_freetype.so [...]/jre/lib/amd64
Image readers iolink.so [...]/jre/lib/amd64
Image readers ioformat.so [...]/jre/lib/amd64
boost fei_boost_iostreams-mt.so [...]/jre/lib/amd64
boost libfei_boost_system-mt.so [...]/jre/lib/amd64
boost libfei_boost_chrono-mt.so [...]/jre/lib/amd64
boost libfei_boost_thread-mt.so [...]/jre/lib/amd64
boost libfei_boost_regex-mt.so [...]/jre/lib/amd64
boost libfei_boost_date_time-mt.so [...]/jre/lib/amd64
boost libfei_boost_filesystem-mt.so [...]/jre/lib/amd64
boost libfei_boost_log-mt.so [...]/jre/lib/amd64
Intel TBB libfei_tbb.so [...]/jre/lib/amd64
ULM ULMLicenseCheck.so [...]/jre/lib/amd64
ULM ULMLicenseCheck_FNP.so [...]/jre/lib/amd64
dragger data draggerDefaults/* $OIVJHOME/data dragger files
OIV fonts fonts/* $OIVJHOME/data font files

optional files

Depending on file type or specific feature that can be used by your application, the following files may also be necessary. They are dynamically loaded from a path specified by the $LD_LIBRARY_PATH or $OIV_LD_LIBRARY_PATH environment variable.

Component Linux file name default path comments
libfei_proj4.so [...]/jre/lib/amd64 required only by SoGeoProjection: Cartographic projection support
libfei_libjpeg.so [...]/jre/lib/amd64 required only if JPEG images are used, e.g. with SoTexture2 or SoJPEGImageRW
Image readers ioformat-bmp.so [...]/jre/lib/amd64/ioplugins required only if bmp images are used
Image readers ioformat-gif.so [...]/jre/lib/amd64/ioplugins required only if gif images are used
Image readers ioformat-mrc.so [...]/jre/lib/amd64/ioplugins required only if mrc images are used
Image readers ioformat-openjpeg.so [...]/jre/lib/amd64/ioplugins required only if openjpeg images are used
Image readers ioformat-png.so [...]/jre/lib/amd64/ioplugins required only if png images are used
Image readers ioformat-tiff.so [...]/jre/lib/amd64/ioplugins required only if tiff images are used
libfei_inventor_io_dxf.so [...]/jre/lib/amd64 required only to import DXF file
libfei_inventor_io_vrml.so [...]/jre/lib/amd64 required only to import VRML file
libfei_smlib.so [...]/jre/lib/amd64 required only by SoCSGShape
Note
Your application can ask Open Inventor to load alternate versions of these .so files. For this, you have to use the following environment variables:
  • OIV_LIBPROJ4_NAME: Cartographic projection support
  • OIV_LIBJPEG_NAME: JPEG support (import/export)
  • OIV_ZLIB_NAME: Compression library
  • OIV_FREETYPE_NAME: FreeType font support
If you have chosen to use one or more alternate .so files, be sure to distribute the alternate files that your application needs.

Viewers

AWT viewers

If your application uses some classes from packages com.openinventor.inventor.viewercomponents.awt*, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
viewer component com.openinventor.inventor.viewercomponents.jar [...]/jre/lib/ext SceneExaminer, SceneOrbiter, etc
viewer component com.openinventor.inventor.viewercomponents.awt.jar [...]/jre/lib/ext
JOGL jogl-all.jar [...]/jre/lib/ext
JOGL jogl-all-natives-linux-amd64 [...]/jre/lib/ext
JOGL gluegen-rt [...]/jre/lib/ext
JOGL gluegen-rt-natives-linux-amd64 [...]/jre/lib/ext

SWT viewers

If your application uses some classes from packages com.openinventor.inventor.viewercomponents.swt*, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
viewer component com.openinventor.inventor.viewercomponents.jar [...]/jre/lib/ext SceneExaminer, SceneOrbiter, etc
viewer component com.openinventor.inventor.viewercomponents.swt.jar [...]/jre/lib/ext
JOGL jogl-all.jar [...]/jre/lib/ext
JOGL jogl-all-natives-linux-amd64 [...]/jre/lib/ext
JOGL gluegen-rt [...]/jre/lib/ext
JOGL gluegen-rt-natives-linux-amd64 [...]/jre/lib/ext
Eclipse SWT swt.jar [...]/jre/lib/ext

Extensions

VolumeViz extension

If your application uses some classes in VolumeViz or in LDM, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
VolumeViz com.openinventor.volumeviz.jar [...]/jre/lib/ext jar of VolumeViz
VolumeViz libcom.openinventor.volumeviz.so [...]/jre/lib/amd64
VolumeViz libfei_volumeViz.so [...]/jre/lib/amd64
LDM com.openinventor.ldm.jar [...]/lib/ext jar of LDM
LDM libcom.openinventor.ldm.so [...]/jre/lib/amd64
LDM libfei_ldm.so [...]/jre/lib/amd64
libfei_libjpeg.so [...]/jre/lib/amd64 required only if using jpeg files

RemoteViz, (server side)

If your application uses some classes in RemoteViz, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
viewer component com.openinventor.inventor.viewercomponents.jar [...]/jre/lib/ext SceneExaminer, SceneOrbiter, etc
RemoteViz com.openinventor.remoteviz.rendering.jar [...]/jre/lib/ext jar of RemoteViz service
RemoteViz libcom.openinventor.remoteviz.rendering.so [...]/jre/lib/amd64
RemoteViz libfei_remoteViz_services.so [...]/jre/lib/amd64
RemoteViz libfei_remoteViz_jpeg_codec.so [...]/jre/lib/amd64
RemoteViz libfei_remoteViz_nvidia_video_codec.so [...]/jre/lib/amd64
RemoteViz libfei_remoteViz_png_codec.so [...]/jre/lib/amd64
RemoteViz libfei_remoteViz_FFmpeg_codec.so [...]/jre/lib/amd64
FFmpeg libfei_FFmpeg_avcodec.so [...]/jre/lib/amd64
FFmpeg libfei_FFmpeg_avfilter.so [...]/jre/lib/amd64
FFmpeg libfei_FFmpeg_avformat.so [...]/jre/lib/amd64
FFmpeg libfei_FFmpeg_avutil.so [...]/jre/lib/amd64
FFmpeg libfei_FFmpeg_swresample.so [...]/jre/lib/amd64
FFmpeg libfei_FFmpeg_swscale.so [...]/jre/lib/amd64

RemoteViz, (client side)

If you want to build a client application without any browser, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
RemoteViz client com.openinventor.remoteviz.clients.jar [...]/jre/lib/ext jar of RemoteViz client
RemoteViz client libcom.openinventor.remoteviz.clients.so [...]/jre/lib/amd64
RemoteViz client libfei_remoteViz_client.so [...]/jre/lib/amd64

MeshViz

If your application uses some classes in MeshViz, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
MeshViz com.openinventor.meshviz.jar [...]/jre/lib/ext jar of MeshViz
MeshViz libcom.openinventor.meshviz.so [...]/jre/lib/amd64
MeshViz libfei_meshViz.so [...]/jre/lib/amd64

MeshViz XLM

If your application uses some classes in MeshVizXLM, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
MeshViz XLM com.openinventor.meshvizxlm.mesh.jar [...]/jre/lib/ext jar of MeshViz XLM
MeshViz XLM com.openinventor.meshvizxlm.extractors.jar [...]/jre/lib/ext jar of MeshViz XLM
MeshViz XLM com.openinventor.meshvizxlm.mapping.jar [...]/jre/lib/ext jar of MeshViz XLM

Medical

If your application uses some classes in the packages com.openinventor.medical.*, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
Medical com.openinventor.medical.jar [...]/jre/lib/ext jar of medical package

HardCopy

If your application uses some classes in HardCopy, it requires all libraries from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
HardCopy com.openinventor.hardcopy.jar [...]/jre/lib/ext jar of HardCopy
HardCopy libcom.openinventor.hardcopy.so [...]/jre/lib/amd64
libfei_hardCopy.so [...]/jre/lib/amd64
libfei_hardCopy_pdf.so [...]/jre/lib/amd64
libfei_ifx_core.so [...]/jre/lib/amd64
libfei_ifx_exporting.so [...]/jre/lib/amd64
libfei_ifx_scheduling.so [...]/jre/lib/amd64
libfei_hpdf.so [...]/jre/lib/amd64 PDF/U3D support

STL readers

If your application imports a scene graph from a STL file format (cf package com.openinventor.inventor.io.stl) all libraries from from Open Inventor core in addition to the following ones:

Component Linux file name default path comments
com.openinventor.inventor.io.stl.jar [...]/jre/lib/ext SoSTLInputReader
libcom.openinventor.inventor.io.stl.so [...]/jre/lib/amd64
libfei_inventor_io_stl.so [...]/jre/lib/amd64

IvTune

IvTune is an extension mainly designed for scene graph editing or debugging. So we do not recommend to embed any IvTune components in your application: It would be a way for the end user to change the scene graph of your application without any control.

However, we indicate below the list of files used by IvTune for your information.

Component Linux file name default path comments
IvTune com.openinventor.ivtune.jar [...]/jre/lib/ext jar of IvTune
IvTune libcom.openinventor.ivtune.so [...]/jre/lib/amd64
IvTune libfei_ivTune.so [...]/jre/lib/amd64
IvTune libfei_ivTune_extender.so [...]/jre/lib/amd64
IvTune libfei_ivTune_extender_base.so [...]/jre/lib/amd64
IvTune libfei_ivTune_extender_inventor.so [...]/jre/lib/amd64
IvTune libfei_ivTune_extender_volumeVizLDM.so [...]/jre/lib/amd64
libfei_hardCopy.so [...]/jre/lib/amd64
libfei_inventor_io_genericFile.so [...]/jre/lib/amd64
libfei_inventor_ui_qt.so [...]/jre/lib/amd64
libQt5Widgets.so [...]/jre/lib/amd64
libQt5Core.so [...]/jre/lib/amd64
libQt5Gui.so [...]/jre/lib/amd64
libQt5PrintSupport.so [...]/jre/lib/amd64

OpenInventor Studio

Open Inventor Studio is the alternative to IvTune when the environment variable $OIV_USE_OIVS is 1. It is also designed for scene graph editing or debugging. So we do not recommend to embed any Open Inventor Studio components in your application: It would be a way for the end user to change the scene graph of your application without any control.

FYI: we indicate below the list of files used by Open Inventor Studio.

Component Linux file name default path comments
OIVStudio libfei_inventor_studio.so [...]/jre/lib/amd64 Following files required only if OIV_USE_OIVS is 1
libfei_common_components.so [...]/jre/lib/amd64
libfei_common_models.so [...]/jre/lib/amd64
libfei_common_notification_system_core.so [...]/jre/lib/amd64
libfei_common_notification_system_gui.so [...]/jre/lib/amd64
libfei_common_periodic_table.so [...]/jre/lib/amd64
libfei_common_theme.so [...]/jre/lib/amd64
libfei_common_utils.so [...]/jre/lib/amd64
libQt5*.so [...]/jre/lib/amd64 other Qt5 files used only by OIVS