Bundling GraphViz within JAVA Codebase

My requirement! Pls let me know if this is possible

--------------------------------------------------------
Bundling GraphViz in JAVA Codebase
--------------------------------------------------------

I want to use Graphviz in my Java application. Unfortunately, sys admins don't allow me to install Graphviz on RHEL server, but they are okay with me bundling Graphviz within my source.

So I want to build Graphviz from source to some directory like /usr/standalone/graphviz and then copy everything under this directory to my Java codebase. I will then deploy my Java application to RHEL and invoke Graphviz API via Java JNI bindings made available within GV.

re: Bundling GraphViz in JAVA Codebase

You can try buiding with:  "./configure --enable-static" and then using the executable you will find in cmd/dot/dot_static  (no need to "make install" locally).

This build is "static" only in the sense that it installs no graphviz-specific libs or plugins.  It is linked with a reasonable set of builtin plugins, but no support for dynamically loading others later.  You will still need the sys admins to install the required support libs (the need for some of these can be suppressed with ./configure options).

/usr/lib64/libltdl.so.7
/usr/lib64/libpangoft2-1.0.so.0
/usr/lib64/libgts-0.7.so.5
/lib64/libexpat.so.1
/usr/lib64/libgd.so.2
/usr/lib64/libXpm.so.4
/usr/lib64/libX11.so.6
/usr/lib64/libjpeg.so.62
/usr/lib64/libfontconfig.so.1
/usr/lib64/libfreetype.so.6
/usr/lib64/libpng12.so.0
/lib64/libz.so.1
/lib64/libm.so.6
/usr/lib64/libpangocairo-1.0.so.0
/usr/lib64/libpango-1.0.so.0
/usr/lib64/libcairo.so.2
/lib64/libgobject-2.0.so.0
/lib64/libgmodule-2.0.so.0
/lib64/libglib-2.0.so.0
/lib64/libc.so.6
/lib64/libdl.so.2
/usr/lib64/libxcb.so.1
/usr/lib64/libpixman-1.so.0
/usr/lib64/libXrender.so.1
/usr/lib64/libXau.so.6

There is no static equivalent for the swig-generated "gv" extension for java.  It depends on the plugin mechanism.

BTW.  graphviz-2.26.0-10.el6 is available in the RedHat distibution, built by RedHat.     Its a bit dated,  but perhaps your sys admins would be willing to install that?

Recent comments