OCI libraries, and PROC

OCI libraries, and PROC

Post by argos.. » Sun, 31 Dec 1899 09:00:00



Hi all,

I am used to working in ProC.
Write embedded SQL in .pc program.
Pre-compile to .c.
(the equivilent of an OCI .c)
Compile .c to .exe.

If a library has been made by OCI,
for OCI, and is used by OCI programs,
could it ever be used by a PROC program?
Of course the makefile would have to
be modified to point to the compiled library.

I don't expect that it could be, but, I
thought that I should ask those who
have experience with the issue.
(And it's not that I want to, but I had
a job interview today, where they use OCI,
even thought they have PROC.)

Merry Christmas,

Argosy

Sent via Deja.com http://www.deja.com/
Before you buy.

 
 
 

OCI libraries, and PROC

Post by ykhogal » Sun, 31 Dec 1899 09:00:00


X.  Functionality of the OCI 7.3.x and Pro*C 2.2.x makefiles
  =============================================================

  Starting with 7.3, we ship (at least) two makefiles for each product:

  ins_<product>.mk and env_<product>.mk.

  The env makefile just has the macros, and the ins makefile includes the
env
  makefile, and has the targets.  In the Pro*c case, we have ins_precomp.mk
and
  env_precomp.mk.  The env_precomp.mk has the necessary macros (such as
PROLDLIBS)
  and ins_precomp has the targets to install and relink the precompilers.
If
  you look at proc.mk, you can see that it includes env_precomp.mk.  So the
  idea starting with 7.3 is to just include env_precomp.mk (which is located
  under $ORACLE_HOME/precomp) in your own makefile.  For people who are
using
  the proc.mk makefile without any changes whatsoever, it can be found in
  the $ORACLE_HOME/precomp/demo/proc/ directory.

  In order to compile the sample programs (which can be found under the
  $ORACLE_HOME/precomp/demo/proc/ directory) using the proc.mk makefile, all
you
  need to do is copy the sample program (say sample1.pc) and the proc.mk
makefile
  to your own directory and type in the following command:

  make -f proc.mk sample1

  If everything is installed properly the output should be as follows on
Solaris
  (the output varies from platform to platform, of course):

  tcsun2% make  -f proc.mk sample1
  make -f proc.mk build OBJS=sample1.o EXE=sample1
  proc  iname=sample1.pc

  Pro*C/C++: Release 2.2.2.0.0 - Production on Sun Dec 15 18:03:11 1996

  Copyright (c) Oracle Corporation 1979, 1994.  All rights reserved.

  System default option values taken from:
/u05/oracle/app/oracle/product/7.3.2.2/
  precomp/admin/pcscfg.h

  cc  -xO4  -Xc -xstrconst -xcg92 -xF -mr -K
PIC -DSLXMX_ENABLE -DSLTS_ENABLE -D_R

TRANT  -I. -I/u05/oracle/app/oracle/product/7.3.2.2/precomp/public     -c
sam
  ple1.c
  cc -o sample1
sample1.o -L/u05/oracle/app/oracle/product/7.3.2.2/lib -lclntsh -l

sql -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -lsql
net
  -lclient -lcommon -lgeneric   -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lc
ore3 -
  lnlsrtl3     `cat
/u05/oracle/app/oracle/product/7.3.2.2/rdbms/lib/sysliblist`
    -lm -lthread
  tcsun2%

  In order to compile one of your own programs, you would type in the
following
  command:

  make -f proc.mk EXE=myprog OBJS=myprog.o

  For example, I have executed the above command by renaming the sample1.pc
as
  myprog.pc and here is the output:

  tcsun2% make -f proc.mk EXE=myprog OBJS=myprog.o
  proc  iname=myprog.pc

  Pro*C/C++: Release 2.2.2.0.0 - Production on Sun Dec 15 18:05:08 1996

  Copyright (c) Oracle Corporation 1979, 1994.  All rights reserved.

  System default option values taken from:
/u05/oracle/app/oracle/product/7.3.2.2/
  precomp/admin/pcscfg.h

  cc  -xO4  -Xc -xstrconst -xcg92 -xF -mr -K
PIC -DSLXMX_ENABLE -DSLTS_ENABLE -D_R

TRANT  -I. -I/u05/oracle/app/oracle/product/7.3.2.2/precomp/public     -c
myp
  rog.c
  cc -o myprog
myprog.o -L/u05/oracle/app/oracle/product/7.3.2.2/lib -lclntsh -lsq

l -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -lsqlne
t -l

client -lcommon -lgeneric   -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lcore3
 -ln
  lsrtl3     `cat
/u05/oracle/app/oracle/product/7.3.2.2/rdbms/lib/sysliblist`
  -lm -lthread
  tcsun2%

  Precompiling C++ progams with embedded SQL
  ------------------------------------------

  Starting with Pro*C 2.2.x, there are ready made targets for Pro*C++
programs
  which means you don't have to modify your makefiles unless of course the
  directory structure for your C++ compiler is different (which is quite
  likely).

  Here's the output from compiling the cppdemo1.pc sample program.

  tcsun2% !m
  make -f proc.mk cppdemo1
  make -f proc.mk cppbuild OBJS=cppdemo1.o EXE=cppdemo1
  proc code=cpp include=/usr/include
include=/opt/SUNWspro/SC3.0.1/include/CC sys_
  include=/SUNWspro/SC4.0/include/CC iname=cppdemo1

  Pro*C/C++: Release 2.2.2.0.0 - Production on Mon Dec 16 12:41:58 1996

  Copyright (c) Oracle Corporation 1979, 1994.  All rights reserved.

  System default option values taken from:
/u05/oracle/app/oracle/product/7.3.2.2/
  precomp/admin/pcscfg.h

  CC -c -I. -I/u05/oracle/app/oracle/product/7.3.2.2/precomp/public
cppdemo1.c
  CC -o cppdemo1
cppdemo1.o -L/u05/oracle/app/oracle/product/7.3.2.2/lib -lclntsh
  -lsql -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -
lsqlne

t -lclient -lcommon -lgeneric   -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lc
ore3
   -lnlsrtl3     `cat
/u05/oracle/app/oracle/product/7.3.2.2/rdbms/lib/sysliblist`
      -lm -lthread
  tcsun2%

  Notice that Pro*C 2.2.2 uses the client shared library (libclntsh.so) by
default

  which means you do not have to modify your makefile or set any environment
  variables to use shared libraries.

  What if you want to compile an OCI program?
  -------------------------------------------

  You need to use the oracle.mk makefile which can be found under the
  $ORACLE_HOME/rdbms/demo directory.  This file includes the env_rdbms.mk
  makefile which can be found in the $ORACLE_HOME/rdbms/lib directory.

  tcsun2% make -f oracle.mk cdemo2
  make -f oracle.mk build EXE=cdemo2 OBJS=cdemo2.o
  cc  -xO4  -Xc -xstrconst -xcg92 -xF -mr -K
PIC -DSLXMX_ENABLE -DSLTS_ENABLE -D_R

EENTRANT  -I/u05/oracle/app/oracle/product/7.3.2.2/rdbms/demo -I/u05/oracle/
app/
  oracle/product/7.3.2.2/rdbms/public -I.      -c  cdemo2.c
  "cdemo2.c", line 189: warning: assignment type mismatch:
          pointer to uchar "=" pointer to char

cc -L/u05/oracle/app/oracle/product/7.3.2.2/lib -L/u05/oracle/app/oracle/pro
duct
  /7.3.2.2/rdbms/lib -o cdemo2 cdemo2.o
/u05/oracle/app/oracle/product/7.3.2.2/lib

/libclient.a -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -l
ncr
  -lsqlnet -lclient -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsr
tl3 -l

core3 -lnlsrtl3 -lsocket -lnsl -lm -ldl -lm -lcore3 -lsocket -lnsl -lm -ldl
-R /
  opt/SUNWcluster/lib -Y
P,:/opt/SUNWcluster/lib:/usr/ccs/lib:/usr/lib -Qy -lc /u0
  5/oracle/app/oracle/product/7.3.2.2/lib/crtn.o
  tcsun2%

  Notice that the above link line does not use shared libraries.  In order
to
  force the usage of shared libraries, you need to follow a couple of steps
  as shown below:

  You can compile the OCI program and force it to use the shared library
  (libclntsh.so) using the same oracle.mk makefile with one modification on
the
  MAKEDEMO macro line as shown below:

  MAKEDEMO= \
          @if [ "$(ORA_CLIENT_LIB)" = "shared" ]; then \
              $(ECHO) $(CC) -o $(EXE) $(OBJS) $(LIBHOME)/libclntsh.so `cat
$(ORACL
  E_HOME)/rdbms/lib/sysliblist `; \
          else \
              if [ "$(NONDEFER)" = "true" -o "$(NONDEFER)" = "TRUE" ] ; then
\
                  $(ECHO) $(CC) $(LDFLAGS) -o $(EXE) $? $(NDFOPT)
$(OCILDLIBS) $(C
  LIBS); \
          else \
          $(ECHO) $(CC) $(LDFLAGS) -o $(EXE) $? $(OCILDLIBS) $(CLIBS); \
          fi \
        fi

  tcsun2% !m
  make -f oracle.mk cdemo2
  make -f oracle.mk build EXE=cdemo2 OBJS=cdemo2.o
  cc  -xO4  -Xc -xstrconst -xcg92 -xF -mr -K
PIC -DSLXMX_ENABLE -DSLTS_ENABLE -D_R

EENTRANT  -I/u05/oracle/app/oracle/product/7.3.2.2/rdbms/demo -I/u05/oracle/
app/
  oracle/product/7.3.2.2/rdbms/public -I.      -c  cdemo2.c
  "cdemo2.c", line 189: warning: assignment type mismatch:
          pointer to uchar "=" pointer to char
  cc -o cdemo2 cdemo2.o
/u05/oracle/app/oracle/product/7.3.2.2/lib/libclntsh.so -l
  socket -lnsl -lm -ldl
  tcsun2%

  Compiling OCI programs written in C++
  -------------------------------------

  The 7.3.2.x oracle.mk makefile has a ready made target to build OCI
programs
  which have C++ style functions in them.  Please note that all the C header
  files that you include in your C++ OCI programs should be enclosed in an
  extern "C" definition as shown below:

  extern "C"
  {
  #include <stdio.h>
  #include <oratypes.h>
  #include <ociapr.h>
  /* demo constants and structs */
  #include <ocidem.h>
  }

  In the $ORACLE_HOME/rdbms/demo directory, cdemo6.cc is an example of a C++
  program which accesses the Oracle database.  Here is how you would compile
  that program.

  tcsun2% make -f oracle.mk cdemo6
  make -f oracle.mk buildc++ EXE=cdemo6 OBJS=cdemo6.o

CC -c -I/u05/oracle/app/oracle/product/7.3.2.2/rdbms/demo -I/u05/oracle/app/
orac
  le/product/7.3.2.2/rdbms/public -I. cdemo6.cc

CC -L/u05/oracle/app/oracle/product/7.3.2.2/lib -L/u05/oracle/app/oracle/pro
duct
  /7.3.2.2/rdbms/lib -o cdemo6 cdemo6.o
/u05/oracle/app/oracle/product/7.3.2.2/lib

/libclient.a -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -l
ncr
  -lsqlnet -lclient -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsr
tl3 -l
  core3 -lnlsrtl3 -lsocket -lnsl -lm -ldl -lm -lcore3
  tcsun2%

  Of course, if you want to use the shared library you can do so by
modifying your
  oracle.mk makefile as explained earlier.

  New macros worth knowing about in the Pro*C/C++ 2.2 makefile
  ------------------------------------------------------------

  PROCFLAGS - what was previously called PROFLAGS
  PROCPPFLAGS - macro for C++ programs containing embedded SQL

  Renaming of libraries in OCI makefiles
  --------------------------------------

  If you look through the oracle.mk makefile, you will see some new library
  names such as libserver.a and libclient.a.  These are nothing but the
  libora.a and libocic.a which have been combined with other new libraries
  to improve efficiency.

  So here is a mapping between older libraries and their newer counterparts:

  libora.a     is replaced by  libserver.a
  libocic.a    is replaced by  libclient.a

  Appendix A: Source code for the multiple module example

  Here are the files used in this example:

  **** FILE main.h ****

  extern void sqlerror();
  extern void connect();
  extern void print_names();
  extern void disconnect();
  *** FILE
...

read more »

 
 
 

OCI libraries, and PROC

Post by Parvinder Sing » Sun, 31 Dec 1899 09:00:00


Hi

right now i am running queries thru OCI ...i want to try out Pro - C too
where can i get Pro - C ?? do i need to download anything special for PRO - C ?
along with downloading Oracle 8 server

   Regards
~Parvinder~

ykhogaly wrote:
> X.  Functionality of the OCI 7.3.x and Pro*C 2.2.x makefiles
>   =============================================================

>   Starting with 7.3, we ship (at least) two makefiles for each product:

>   ins_<product>.mk and env_<product>.mk.

>   The env makefile just has the macros, and the ins makefile includes the
> env
>   makefile, and has the targets.  In the Pro*c case, we have ins_precomp.mk
> and
>   env_precomp.mk.  The env_precomp.mk has the necessary macros (such as
> PROLDLIBS)
>   and ins_precomp has the targets to install and relink the precompilers.
> If
>   you look at proc.mk, you can see that it includes env_precomp.mk.  So the
>   idea starting with 7.3 is to just include env_precomp.mk (which is located
>   under $ORACLE_HOME/precomp) in your own makefile.  For people who are
> using
>   the proc.mk makefile without any changes whatsoever, it can be found in
>   the $ORACLE_HOME/precomp/demo/proc/ directory.

>   In order to compile the sample programs (which can be found under the
>   $ORACLE_HOME/precomp/demo/proc/ directory) using the proc.mk makefile, all
> you
>   need to do is copy the sample program (say sample1.pc) and the proc.mk
> makefile
>   to your own directory and type in the following command:

>   make -f proc.mk sample1

>   If everything is installed properly the output should be as follows on
> Solaris
>   (the output varies from platform to platform, of course):

>   tcsun2% make  -f proc.mk sample1
>   make -f proc.mk build OBJS=sample1.o EXE=sample1
>   proc  iname=sample1.pc

>   Pro*C/C++: Release 2.2.2.0.0 - Production on Sun Dec 15 18:03:11 1996

>   Copyright (c) Oracle Corporation 1979, 1994.  All rights reserved.

>   System default option values taken from:
> /u05/oracle/app/oracle/product/7.3.2.2/
>   precomp/admin/pcscfg.h

>   cc  -xO4  -Xc -xstrconst -xcg92 -xF -mr -K
> PIC -DSLXMX_ENABLE -DSLTS_ENABLE -D_R

> TRANT  -I. -I/u05/oracle/app/oracle/product/7.3.2.2/precomp/public     -c
> sam
>   ple1.c
>   cc -o sample1
> sample1.o -L/u05/oracle/app/oracle/product/7.3.2.2/lib -lclntsh -l

> sql -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -lsql
> net
>   -lclient -lcommon -lgeneric   -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lc
> ore3 -
>   lnlsrtl3     `cat
> /u05/oracle/app/oracle/product/7.3.2.2/rdbms/lib/sysliblist`
>     -lm -lthread
>   tcsun2%

>   In order to compile one of your own programs, you would type in the
> following
>   command:

>   make -f proc.mk EXE=myprog OBJS=myprog.o

>   For example, I have executed the above command by renaming the sample1.pc
> as
>   myprog.pc and here is the output:

>   tcsun2% make -f proc.mk EXE=myprog OBJS=myprog.o
>   proc  iname=myprog.pc

>   Pro*C/C++: Release 2.2.2.0.0 - Production on Sun Dec 15 18:05:08 1996

>   Copyright (c) Oracle Corporation 1979, 1994.  All rights reserved.

>   System default option values taken from:
> /u05/oracle/app/oracle/product/7.3.2.2/
>   precomp/admin/pcscfg.h

>   cc  -xO4  -Xc -xstrconst -xcg92 -xF -mr -K
> PIC -DSLXMX_ENABLE -DSLTS_ENABLE -D_R

> TRANT  -I. -I/u05/oracle/app/oracle/product/7.3.2.2/precomp/public     -c
> myp
>   rog.c
>   cc -o myprog
> myprog.o -L/u05/oracle/app/oracle/product/7.3.2.2/lib -lclntsh -lsq

> l -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -lsqlne
> t -l

> client -lcommon -lgeneric   -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lcore3
>  -ln
>   lsrtl3     `cat
> /u05/oracle/app/oracle/product/7.3.2.2/rdbms/lib/sysliblist`
>   -lm -lthread
>   tcsun2%

>   Precompiling C++ progams with embedded SQL
>   ------------------------------------------

>   Starting with Pro*C 2.2.x, there are ready made targets for Pro*C++
> programs
>   which means you don't have to modify your makefiles unless of course the
>   directory structure for your C++ compiler is different (which is quite
>   likely).

>   Here's the output from compiling the cppdemo1.pc sample program.

>   tcsun2% !m
>   make -f proc.mk cppdemo1
>   make -f proc.mk cppbuild OBJS=cppdemo1.o EXE=cppdemo1
>   proc code=cpp include=/usr/include
> include=/opt/SUNWspro/SC3.0.1/include/CC sys_
>   include=/SUNWspro/SC4.0/include/CC iname=cppdemo1

>   Pro*C/C++: Release 2.2.2.0.0 - Production on Mon Dec 16 12:41:58 1996

>   Copyright (c) Oracle Corporation 1979, 1994.  All rights reserved.

>   System default option values taken from:
> /u05/oracle/app/oracle/product/7.3.2.2/
>   precomp/admin/pcscfg.h

>   CC -c -I. -I/u05/oracle/app/oracle/product/7.3.2.2/precomp/public
> cppdemo1.c
>   CC -o cppdemo1
> cppdemo1.o -L/u05/oracle/app/oracle/product/7.3.2.2/lib -lclntsh
>   -lsql -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -
> lsqlne

> t -lclient -lcommon -lgeneric   -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lc
> ore3
>    -lnlsrtl3     `cat
> /u05/oracle/app/oracle/product/7.3.2.2/rdbms/lib/sysliblist`
>       -lm -lthread
>   tcsun2%

>   Notice that Pro*C 2.2.2 uses the client shared library (libclntsh.so) by
> default

>   which means you do not have to modify your makefile or set any environment
>   variables to use shared libraries.

>   What if you want to compile an OCI program?
>   -------------------------------------------

>   You need to use the oracle.mk makefile which can be found under the
>   $ORACLE_HOME/rdbms/demo directory.  This file includes the env_rdbms.mk
>   makefile which can be found in the $ORACLE_HOME/rdbms/lib directory.

>   tcsun2% make -f oracle.mk cdemo2
>   make -f oracle.mk build EXE=cdemo2 OBJS=cdemo2.o
>   cc  -xO4  -Xc -xstrconst -xcg92 -xF -mr -K
> PIC -DSLXMX_ENABLE -DSLTS_ENABLE -D_R

> EENTRANT  -I/u05/oracle/app/oracle/product/7.3.2.2/rdbms/demo -I/u05/oracle/
> app/
>   oracle/product/7.3.2.2/rdbms/public -I.      -c  cdemo2.c
>   "cdemo2.c", line 189: warning: assignment type mismatch:
>           pointer to uchar "=" pointer to char

> cc -L/u05/oracle/app/oracle/product/7.3.2.2/lib -L/u05/oracle/app/oracle/pro
> duct
>   /7.3.2.2/rdbms/lib -o cdemo2 cdemo2.o
> /u05/oracle/app/oracle/product/7.3.2.2/lib

> /libclient.a -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -l
> ncr
>   -lsqlnet -lclient -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsr
> tl3 -l

> core3 -lnlsrtl3 -lsocket -lnsl -lm -ldl -lm -lcore3 -lsocket -lnsl -lm -ldl
> -R /
>   opt/SUNWcluster/lib -Y
> P,:/opt/SUNWcluster/lib:/usr/ccs/lib:/usr/lib -Qy -lc /u0
>   5/oracle/app/oracle/product/7.3.2.2/lib/crtn.o
>   tcsun2%

>   Notice that the above link line does not use shared libraries.  In order
> to
>   force the usage of shared libraries, you need to follow a couple of steps
>   as shown below:

>   You can compile the OCI program and force it to use the shared library
>   (libclntsh.so) using the same oracle.mk makefile with one modification on
> the
>   MAKEDEMO macro line as shown below:

>   MAKEDEMO= \
>           @if [ "$(ORA_CLIENT_LIB)" = "shared" ]; then \
>               $(ECHO) $(CC) -o $(EXE) $(OBJS) $(LIBHOME)/libclntsh.so `cat
> $(ORACL
>   E_HOME)/rdbms/lib/sysliblist `; \
>           else \
>               if [ "$(NONDEFER)" = "true" -o "$(NONDEFER)" = "TRUE" ] ; then
> \
>                   $(ECHO) $(CC) $(LDFLAGS) -o $(EXE) $? $(NDFOPT)
> $(OCILDLIBS) $(C
>   LIBS); \
>           else \
>           $(ECHO) $(CC) $(LDFLAGS) -o $(EXE) $? $(OCILDLIBS) $(CLIBS); \
>           fi \
>         fi

>   tcsun2% !m
>   make -f oracle.mk cdemo2
>   make -f oracle.mk build EXE=cdemo2 OBJS=cdemo2.o
>   cc  -xO4  -Xc -xstrconst -xcg92 -xF -mr -K
> PIC -DSLXMX_ENABLE -DSLTS_ENABLE -D_R

> EENTRANT  -I/u05/oracle/app/oracle/product/7.3.2.2/rdbms/demo -I/u05/oracle/
> app/
>   oracle/product/7.3.2.2/rdbms/public -I.      -c  cdemo2.c
>   "cdemo2.c", line 189: warning: assignment type mismatch:
>           pointer to uchar "=" pointer to char
>   cc -o cdemo2 cdemo2.o
> /u05/oracle/app/oracle/product/7.3.2.2/lib/libclntsh.so -l
>   socket -lnsl -lm -ldl
>   tcsun2%

>   Compiling OCI programs written in C++
>   -------------------------------------

>   The 7.3.2.x oracle.mk makefile has a ready made target to build OCI
> programs
>   which have C++ style functions in them.  Please note that all the C header
>   files that you include in your C++ OCI programs should be enclosed in an
>   extern "C" definition as shown below:

>   extern "C"
>   {
>   #include <stdio.h>
>   #include <oratypes.h>
>   #include <ociapr.h>
>   /* demo constants and structs */
>   #include <ocidem.h>
>   }

>   In the $ORACLE_HOME/rdbms/demo directory, cdemo6.cc is an example of a C++
>   program which accesses the Oracle database.  Here is how you would compile
>   that program.

>   tcsun2% make -f oracle.mk cdemo6
>   make -f oracle.mk buildc++ EXE=cdemo6 OBJS=cdemo6.o

> CC -c -I/u05/oracle/app/oracle/product/7.3.2.2/rdbms/demo -I/u05/oracle/app/
> orac
>   le/product/7.3.2.2/rdbms/public -I. cdemo6.cc

> CC -L/u05/oracle/app/oracle/product/7.3.2.2/lib -L/u05/oracle/app/oracle/pro
> duct
>   /7.3.2.2/rdbms/lib -o cdemo6 cdemo6.o
> /u05/oracle/app/oracle/product/7.3.2.2/lib

> /libclient.a -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -l
> ncr
>   -lsqlnet -lclient -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsr
> tl3 -l
>   core3 -lnlsrtl3 -lsocket -lnsl -lm -ldl -lm -lcore3
>   tcsun2%

>   Of course, if you want to use the shared library you can do so by
> modifying your
>   oracle.mk makefile as explained earlier.

>   New macros worth knowing about in the Pro*C/C++ 2.2 makefile
>   ------------------------------------------------------------

>   PROCFLAGS - what was previously called PROFLAGS
>   PROCPPFLAGS - macro for C++ programs containing embedded SQL

>   Renaming of

...

read more »

 
 
 

OCI libraries, and PROC

Post by argos.. » Sun, 31 Dec 1899 09:00:00


As I understand, it a separate feature that
you purchase on your license agreement.
I think that OCI is included for free.

Apparently, there is also a C++ compiler too,
for an extra charge, but I've only worked with
PROC myself.

Argosy



> Hi

> right now i am running queries thru OCI ...i want to try out Pro - C
too
> where can i get Pro - C ?? do i need to download anything special for
PRO - C ?
> along with downloading Oracle 8 server

>    Regards
> ~Parvinder~

Sent via Deja.com http://www.deja.com/
Before you buy.
 
 
 

1. OCI 8.0 library against to OCI 7.2 library

Oracle Document says OCI 8.16i library ( new interface method start with
OCI....) runs faster than OCI 7.2 library ( old interface method start with
o...).
But I do benchmark test for both library on the data selection statement.
The result is that OCI 8.16i library is 20% slower than OCI 7.2 library.

Does any body have any idea why?

David Song

2. Index as primary key?

3. DB-Library/OCX and OCI/OCX

4. SQLAny with IPX-Protocoll

5. Looking for Win16 OCI library

6. Exporting SQL7 to Access with SQLDMO

7. Seg Fault on program exit with OCI in shared library with dlopen() on Linux

8. Testing Computer Software Conference (TCS2001) -- Call for Papers

9. OCI C++ library

10. OCI and JavaVM and thread library ..

11. OCI libraries for Linux

12. problem running query against AL24uttfs database using oci library

13. OCI: what libraries to link with ?