X
96 Rate this article:
No rating

(Internal) IDL Workbench error: Fatal error initializing DML

MariM
The below steps can help you diagnose the error starting the IDL 7.0 Workbench:
Fatal error initializing DML

This has been a common error when initializing the IDL 7.0 Workbench, most often occurring on 64-bit Linux systems, but sometimes 32-bit systems and OSX. There has not been a common missing library on these systems but the key is that in almost all circumstances there is a missing library dependency on the libidl_jdml file which is located in the \idl70\idlde\
directory.

Steps to help troubleshoot this issue are:
1. perform an ldd on the jdml file and look for the missing dependencies (some are expected to be 'not found' but others should be found):

>ldd libidl_jdml.so

Where the libidl_jdml.so is located in /usr/local/itt/idl70/idlde/bin.linux_x86/libidl_jdml.so

and on OSX:

>otool -L libidl_jdml.jnlib

located in the /Applications/itt/idl70/idlde/bin.darwin.ppc/ (or intel equivalent)

2.Try to create an idl bridge object:

>o=obj_new('idl_idlbridge')

This will sometimes also produce a library error which can provide clues to the missing dependency.

A typical output would look like the following (on linux):
linux-gate.so.1 => (0xffffe000)
libidl_dml.so => not found

libidl.so.7.0 => not found
libidl_ops.so.7.0 => not found

libidl_ipcclient.so.7.0 => not found

libXp.so.6 => not found
libXpm.so.4 => /usr/lib/libXpm.so.4 (0xf7e15000)
libXmu.so.6 => /usr/lib/libXmu.so.6 (0xf7dfe000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xf7dee000)
libXt.so.6 => /usr/lib/libXt.so.6 (0xf7d96000)
libSM.so.6 => /usr/lib/libSM.so.6 (0xf7d8c000)
libICE.so.6 => /usr/lib/libICE.so.6 (0xf7d72000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xf7c76000)
librt.so.1 => /lib/librt.so.1 (0xf7c6d000)
libpthread.so.0 => /lib/libpthread.so.0 (0xf7c54000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xf7c48000)
libdl.so.2 => /lib/libdl.so.2 (0xf7c42000)
libm.so.6 => /lib/libm.so.6 (0xf7c19000)
libc.so.6 => /lib/libc.so.6 (0xf7ac0000)
libstdc++.so.5 => not found

libXau.so.6 => /usr/lib/libXau.so.6 (0xf7abd000)
libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xf7aba000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0xf7a9e000)
/lib/ld-linux.so.2 (0x001be000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xf7a98000)

The libXp* and libstdc* are some of the common libraries missing. You will need to install these libraries.  Typically on a 64-bit system it is the 32-bit libraries that are missing but on occasion it has also been the 64-bit libraries. This usually resolves the problem.

Note on Mac OS X: There is a case of a user that was trying to run the IDL Workbench by executing:

/Applications/itt/idl70/idlde/idlde.darwin.universal

and getting the error "Fatal error initializing DML" . To fix this problem the user just needs to open /Applications/itt/idl70/IDLWorkbench.app instead.

Another user has found that re-starting or re-booting the computer solved the problem.