Skip to main content

File Status 9/118 Symbol not found (Fatal)

  • February 15, 2013
  • 0 replies
  • 0 views

Problem:

When calling a dynamically loadable shared object (.so or .sl for HP/UX) you receive this error.  

Resolution:

You have attempted to load a shared object with a name that has not been defined.

When you create a dynamically shared object using  Micro Focus "cob" (cob -zv pgm-name.cbl myC.c), any references in the COBOL or C function must be resolved at link time.

COBOL pgm-name.cbl

Procedure Division.

      Call "another-cobol-pgm".

The COBOL program "another-cobol-pgm" must be resolved.  That is, the linker must be able to resolve the symbol.  If not, the shared object will be created, but you will not be able to load it.  Hence the 9/118 error.

To get around this you can specify the -U cob flag when creating the shared object:

   cob -zvU pgm-name.cbl myC.c

The -U flag causes any unresolved reference to be treated as a COBOL program to be dynamically loaded. Normally, such references would cause a fatal error at link time when creating a system executable, or cause a fatal error at run-time for callable shared objects.

Old KB# 2010

#ServerExpress
#AcuCobol
#RMCOBOL
#COBOL
#netexpress

0 replies

Be the first to reply!