Skip to main content

Summary

Orbix IDL compiler fails to run with "idl: no IDL configuration file!".

Failure to compile the IDL

Cannot run IDL compiler

Environment

Required: Orbix 6.3, Linux RHEL7 64bit, XFS filesystem type

Question/Problem Description

After installing Orbix 6.3 on RHEL 7 64bit, the IDL compiler fail to run.

Error Message

$ idl -V
idl: no IDL configuration file!

Cause

The Orbix 6.3 IDL compiler calls stat() on the idl configuration file  and receives errno == EOVERFLOW from it.

 http://man7.org/linux/man-pages/man2/stat.2.html

EOVERFLOW
pathname or fd refers to a file whose size, inode number, or number of blocks cannot be represented in, respectively, the types off_t, ino_t, or blkcnt_t.  This error can occur when, for example, an application compiled on a 32-bit platform without -D_FILE_OFFSET_BITS=64 calls stat() on a file whose size exceeds (1<<31)-1 bytes.

Resolution

Install Orbix 6.3 on a different filesystem type.

Workaround

cp $IT_PRODUCT_DIR/asp/6.3/etc/idl.cfg /tmp

export IT_IDL_CONFIG_FILE=/tmp/idl.cfg

Support Incidents

2852942

Notes

The RedHat Knowledge Base site also has the following information:
 
https://access.redhat.com/solutions/1573643
 
stat() for a file on an XFS filesystem returns EOVERFLOW in 32bit processes
 SOLUTION UNVERIFIED - Updated August 12 2015 at 9:02 AM -  English  


Environment
•    Red Hat Enterprise Linux 7
•    XFS

Issue
•    stat() for a file on an XFS filesystem returns EOVERFLOW in 32bit processes.

Resolution
There are three options to avoid the issue.
•    reduce the filesystem.
•    create with larger inode size.
•    mount with inode32 option.

Root Cause
•    stat() for 32bit emulation cannot return st_ino >= 2^32.
•    XFS allocates 64bit inode number in default.
•    The maximum inode number will be (filesystem size /inode size)-1.


#Orbix
#KnowledgeDocs