My Oracle Support Banner

RP/TUX 9.1 - [CERT] Build COBOL application failed with IBM COBOL compiler version 2 on AIX5.3 (Doc ID 778209.1)

Last updated on MAY 19, 2020

Applies to:

Oracle Tuxedo - Version 9.1 and later
Information in this document applies to any platform.
Information in this document applies to any platform
***Checked for relevance on 24-12-2013***

Goal

DESCRIPTION: 
Because IBM COBOL compiler has many different compiler options with Micro Focus, buildclient/buildserver cannot build COBOL program directly on AIX 5.3. 

Reduce $TUXDIR/bin/cobcc to the simplest, like this:
   set -x
   eval cob2 $*

and run :
   buildclient -C -o hello -f hello.cbl

Here is the output:
buildclient -C -o hello -f hello.cbl
+ eval cob2 -I/path/to/directory/tuxedo9.1/include -o hello -qstaticinline -qrtti=all
-L/path/to/directory/tuxedo9.1/lib hello.cbl -lcobatmi -brtl /path/to/directory/tuxedo9.1/lib/tpinit.o -ltux -lbuft
-lfml -lfml32 -lengine -lpthread
+ cob2 -I/path/to/directory/tuxedo9.1/include -o hello -qstaticinline -qrtti=all -L/path/to/directory/tuxedo9.1/lib
hello.cbl -lcobatmi -brtl /path/to/directory/tuxedo9.1/lib/tpinit.o -ltux -lbuft -lfml -lfml32 -lengine -lpthread
PP 5724-H44 IBM COBOL for AIX  2.0.0 in progress ...
LineID  Message code  Message text
        IGYDS0139-W   Diagnostic messages were issued during processing of     
                      compiler options.  These messages are located at the     
                      beginning of the listing.                                
Messages    Total    Informational    Warning    Error    Severe    Terminating
Printed:       3                          1         2                      
End of compilation 1,  program HELLOWORLD,  highest severity: Error.
Return code 8
CMDTUX_CAT:512: ERROR: Cannot execute C compiler cobcc  -I$TUXDIR/include -o hello  -qstaticinline  -qrtti=all 
-L${TUXDIR}/lib hello.cbl   -lcobatmi  -brtl $TUXDIR/lib/tpinit.o  -ltux -lbuft  -lfml -lfml32 -lengine  -lpthread 

buildclient still add option '-qstaticinline -qrtti=all' to cob2, which can't be understood by IBM COBOL compiler.

Change the command to:
cob2 -I/path/to/directory/tuxedo9.1/include -L${TUXDIR}/lib -o hello hello.cbl $TUXDIR/lib/tpinit.o -ltux -lbuft 
-lfml -lfml32 -lengine  -lpthread -lcobatmi

delete option '-qstaticinline -qrtti=all', then the build hello.cbl successfully.

This is just a very simple example. If the application is more complex, It is very hard to use current buildclient/buildserver to build COBOL application.
NOTE: The attribute values used in this article represent fictitious sample names that are made up as example. Any similarity to actual code, is purely coincidental and not intended in any other manner.
 
CONFIGURATION:
AIX 5.3
Tuxedo 9.1, 32-bit for AIX 5.3
COBOL for AIX Compiler, Version 2

Solution

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Goal
Solution


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.