Las rutinas de inicialización de biblioteca libima, so_init() y InitLibrary(), no son funciones que admiten subprocesos. Por lo tanto, las rutinas de inicialización no son llamadas correctamente para interfaces que admiten multiprocesamiento.
Solución alternativa: no utilice el parámetro lazyload para enlazarlo a libima. Por ejemplo, no compile el código mediante el parámetro lazyload.
cc example.c -mt -z lazyload -lima
En su lugar, utilice el siguiente comando para compilar el código:
cc example.c -mt -z nolazyload -lima -z lazyload