Forum OpenACS Development: Re: Fresh install of OpenACS 5.10 on Oracle 19c
[vagrant@oracle-19c-vagrant modules]$ cd ns nsaccess/ nscoap/ nsdbimy/ nsdbtds/ nsfortune/ nsldapd/ nsoracle/ nsshell/ nssys/ nsvfs/ nsaspell/ nsconf/ nsdbipg/ nsdhcpd/ nsgdchart/ nsloopctl/ nsphp/ nssip/ nssyslogd/ nswebpush/ nsauthpam/ nsdbbdb/ nsdbmysql/ nsdns/ nsicmp/ nsmemcache/ nsradiusd/ nssmtpd/ nstftpd/ nszlib/ nschartdir/ nsdbi/ nsdbpg/ nsexample/ nsimap/ nsocaml/ nsrtsp/ nssnmp/ nstk/ nsclamav/ nsdbilite/ nsdbsqlite/ nsexpat/ nsldap/ nsodbc/ nssavi/ nsstats/ nsudp/ [vagrant@oracle-19c-vagrant modules]$ cd nsoracle/ [vagrant@oracle-19c-vagrant nsoracle]$ ls BUGS ChangeLog doc Makefile Makefile.win32 nsoracle.c nsoracle.h plsql.tcl README test TODO win32 [vagrant@oracle-19c-vagrant nsoracle]$ sudo make && make install gcc -std=gnu11 -I/sdk/include -I/rdbms/demo -I/rdbms/public -I/network/public -I/plsql/public -O2 -fomit-frame-pointer -Wall -fPIC -pipe -DNDEBUG -DSYSTEM_MALLOC -std=c99 -I/usr/local/ns/include -I"/usr/local/ns/include" -DHAVE_CONFIG_H -c -o nsoracle.o nsoracle.c In file included from nsoracle.c:14:0: nsoracle.h:19:17: fatal error: oci.h: No such file or directory #include gt oci.h lt ^ compilation terminated. make: *** [nsoracle.o] Error 1 [vagrant@oracle-19c-vagrant nsoracle]$
Any help is appreciated.
I cannot comment on the vagrant machine setup from the tutorial, but I have recently installed an OpenACS instance together with the Oracle driver and this worked fine (note that it was a Postgres OpenACS using the Oracle driver only to access some tables from a remote Oracle and no vagrant was involved).
Summarizing, these were the steps (on the machine running NaviServer):
* download basic and sdk from https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html
* compile nsoracle located in the NaviServer scr folder following the instructions in the nsoracle README (see also the tutorial for pointers). Basically, you want to point the compiler to your basic and sdk installation from before.
It could be that the makefile does not find the basic and sdk installations and some massaging of the paths will do.
Hope this helps
I am currently on vacation, so here is just a short replay. This error message means, that the include files for Oracle client programs are either missing in your installation, or not found on the default location(e.g. these are on a different path).
Note, that according to nsoracle/README, one has to set ORACLE_HOME variable first.
From the README file:
Compilation works for Oracle with Oracle client libs Version 184.108.40.206.0 (instant client package and instant client package SDK, 64-bit). After downloading from e.g., https://www.oracle.com/database/technologies/instant-client/macos-intel-x86-downloads.html install this library e.g. under /usr/local/src/oracle and set ORACLE_HOME accordingly. export ORACLE_HOME=/usr/local/src/oracle/instantclient_19_8/ After downloading the client libraries, ORACLE_HOME should include # includes: under $ORACLE_HOME/sdk/include/ # libraries: $ORACLE_HOME/lib/ To build and install the binary under NaviServer, use e.g. make make install