Home » Developer & Programmer » Precompilers, OCI & OCCI » ENV Vars for ProC on Linux (Oracle 12, Suse Linux, ksh, makefile)
ENV Vars for ProC on Linux [message #654897] Tue, 16 August 2016 11:06 Go to next message
dane1954
Messages: 1
Registered: August 2016
Junior Member
I am having a problem getting proc to run on linux (suse I believe). I suspect the problem
is one of undefined or incorrectly defined environment variables. In my environment I have
defined (note: ... indicates not relevant but correct parent directory tree):

LD_LIBRARY_PATH=.../oracle/InstantClient_12102_64/product/12.1.0/client_1/lib
ORACLE_BASE=.../oracle
ORACLE_HOME=.../oracle/InstantClient_12102_64/product/12.1.0/client_1
ORACLE_INSTANTCLIENT=.../oracle/InstantClient_12102_64/product/12.1.0/client_1/lib
ORACLE_LIB=/boeing/sw/sws/oracle/InstantClient_12102_64/product/12.1.0/client_1/lib
ORACLE_SID=dtanal
ORACLE_TERM=hft
PATH=.../oracle/InstantClient_12102_64/product/12.1.0/client_1/bin:$PATH

in my makefile I define variables:

PROC = $(ORACLE_HOME)/bin/proc
PROCINC=include=$(ORACLE_HOME)/proc/lib \
include=$(ORACLE_HOME)/rdbms/demo \
include=$(ORACLE_HOME)/rdbms/public \
include=$(ORACLE_HOME)/network/public \
include=/boeing/include
PROCFLAGS = $(PROCINC) sqlcheck=syntax define=NDEBUG


When my makefile issues the command:

$(PROC) $(PROCFLAGS) iname=db_GetDataBaseDate.pc

(expands out to:

.../oracle/InstantClient_12102_64/product/12.1.0/client_1/bin/proc include=.../oracle/InstantClient_12102_64/product/12.1.0/client_1/proc/lib include=.../oracle/InstantClient_12102_64/product/12.1.0/client_1/rdbms/demo include=.../oracle/InstantClient_12102_64/product/12.1.0/client_1/rdbms/public include=.../oracle/InstantClient_12102_64/product/12.1.0/client_1/network/public include=.../include sqlcheck=syntax define=NDEBUG iname=db_GetDataBaseDate.pc


)
I get the following error:
Pro*C/C++: Release 12.1.0.2.0 - Production on Tue Aug 16 07:17:23 2016

Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved.

System default option values taken from: /boeing/sw/sws/oracle/InstantClient_12102_64/product/12.1.0/client_1/precomp/admin/pcscfg.cfg

dbgc_init_all failed with ORA-48141
ORA-00600: internal error code, arguments: [17998], [2], [], [], [], [], [], [], [], [], [], []
ORA-00600: internal error code, arguments: [17998], [2], [], [], [], [], [], [], [], [], [], []
(more not included for brevity).

The content of pcscfg.cfg (please note: I have NO write access to this file and I have
added newlinex after the commas here for readabiltiy ):

sys_include=($ORACLE_HOME/precomp/public,
/usr/include,
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/include,
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include,
/usr/lib/gcc/x86_64-redhat-linux/4.4.4/include,
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/include,
/usr/lib64/gcc/x86_64-suse-linux/4.3/include)
ltype=short
define=__x86_64__

It should be noted that the redhat directories do NOT exist nor does the suse 4.1.
There are suse 4.3 and 4.7 directories. The docs mention being able to have private
.cfg files, but does NOT seem to go into detail about how they should be named, where
they should reside, or how to get ProC to use them.

The docs also seem to be silent on what this error is about, or how to prevent it. I
was able to google the ORA-48141 and that indicated it was unable to create a directory.
WHY on earth would it be trying to create a directory? I hope I've included enough info
to allow an intelligent response.

How do I fix this? Am I missing an environment variable, or is one of the ones I have
incorrect? I have used ProC in the past, but it was over 20 years ago, and I just can't
remember what I had to set up back then.

Re: ENV Vars for ProC on Linux [message #654898 is a reply to message #654897] Tue, 16 August 2016 11:54 Go to previous messageGo to next message
BlackSwan
Messages: 26766
Registered: January 2009
Location: SoCal
Senior Member
AFAIK, in *NIX is it NEVER ".../" (three dots); only two dots
But ../ is relative & should ALWAYS be avoided.
I suggest changing reference to Fully Qualified Pathname; starting with "/"
Re: ENV Vars for ProC on Linux [message #654899 is a reply to message #654897] Tue, 16 August 2016 12:00 Go to previous messageGo to next message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator

ORA-00600/ORA-07445/ORA-03113 = Oracle bug => search on Metalink/MOS and/or call Oracle support
Have a look at alert.log and trace files.
You can also read this article: Troubleshooting Internal Errors.

Re: ENV Vars for ProC on Linux [message #654900 is a reply to message #654897] Tue, 16 August 2016 12:01 Go to previous messageGo to next message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator

Here's a lead:
ORA-48141: error creating directory during ADR initialization [%s]
 *Cause: Error encountered when creating a directory during the
         initialization of the ADR subsystem.
 *Action: Check the input arguments to the ADR initialization routine
          and the state of the operating system.
Re: ENV Vars for ProC on Linux [message #654901 is a reply to message #654897] Tue, 16 August 2016 12:06 Go to previous message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator

Have a look at the following MOS note:
Bug 20406840 - Pro*C 12.1.0.2 throws ORA-600 [17998] when precompiling by 'other' user (not Oracle install user) (Doc ID 20406840.Cool.
Previous Topic: Pro*COBOL Dynamic SQL How to get data length of a VARCHAR2 column
Next Topic: Pro*C problem - unable generate .exe file
Goto Forum:
  


Current Time: Thu Mar 28 07:27:57 CDT 2024