Skip to content

DrawingNativeLoader to properly configure VTK, MESA and JOGL pathes #16

@jzy3d

Description

@jzy3d

Constraints for defining path

  • Defining library path for VTK and/or Mesa differs among OS (mac requires DYLD_LIBRARY_PATH, linux requires LD_LIBRARY_PATH, windows requires PATH)
  • Mesa is used conditionally. It requires to appear first in library path for Windows to work. Need to be out of path for Windows to enable GPU (handled through ChipSelector).
  • java.library.path="$PATH" must be set to share this path to java. We can't just move the passes discussed above to this variable, otherwise the JVM will encounter library load error.

Hard for the developer/CI since

  • its system path should not be set to its build / dev folder native to remain close to a user and CI environment
  • IDE run configuration of each demo program must have its pathes defined. Cumbersome to set.
  • Maven configuration of path is not working well on macOS, so it's better to have configuration at run time and not in Maven/IDE configuration.

Proposal
DrawingNativeLoader.load() static call at program start, mixing the current VTKUtils.loadAllNative() and ChipSelector.use(CPU)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions