My Oracle Support Banner

RP/TUX 8.1 / HP-UX11- link errors when using macro UDEFERSIGS() (Doc ID 773859.1)

Last updated on SEPTEMBER 13, 2023

Applies to:

Oracle Tuxedo - Version 6.4 and later
Information in this document applies to any platform.
Information in this document applies to any platform

Goal

Customer environment:
Product: Tuxedo 8.1 
Platform: HPUX 11i 
All the prerequisites for Tuxedo 8.1 are satisfied. 
Compiler - ACC HP Ansi C++ B3910B A.03.37

Problem description:
When compiling  the program using macro UDEFERSIGS()  customer is getting the following error:
 
/usr/ccs/bin/ld: Unsatisfied symbols:
_e_sigpending_addr() (code)
_e_sigdefer_addr() (code) 

The problem seems to be with  macro definition for some functions in the "$TUXDIR/include/Usignal.h" header
that don't have necessary instructions to be compiled with a C++ compiler. 
The only way to succesfully compile this code was to modify the "Usignal.h" header file in order to declare
those two functions as ' extern "C" ' if the precompilation  flag "cplusplus" is active.

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
References

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