Dev - C++ - Problemas para conectar con BD Oracle usando Ocilib

 
Vista:

Problemas para conectar con BD Oracle usando Ocilib

Publicado por pabusa (1 intervención) el 10/05/2019 23:26:50
Estoy intentando usar "ocilib" para conectar a una base de datos Oracle. Pero no hay manera de compilar y hacer que funcione.

El código que utilizo es:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "ocilib.h"
 
int main(void)
{
    OCI_Connection *cn;
 
    if (!OCI_Initialize(NULL, NULL, OCI_ENV_DEFAULT))
        return EXIT_FAILURE;
 
    cn = OCI_ConnectionCreate("db", "usr", "pwd", OCI_SESSION_DEFAULT);
 
    printf("Server major    version : %i\n",   OCI_GetServerMajorVersion(cn));
    printf("Server minor    version : %i\n",   OCI_GetServerMinorVersion(cn));
    printf("Server revision version : %i\n\n", OCI_GetServerRevisionVersion(cn));
    printf("Connection      version : %i\n\n", OCI_GetVersionConnection(cn));
 
    OCI_Cleanup();
 
    return EXIT_SUCCESS;
}

En las opciones el compilador, pestaña de Directorios, reviso todos los paths y agrego en ellos:
- las correspondiente .lib (en las rutas de lib según los directorios)
- la ocilib.h .lhpp _core.hpp impl.hpp (los 4 archivos que vienen en las correspondientes rutas de includes)

Si compilo del tirón me aparece:

undefined reference to `OCI_Initialize'
undefined reference to `OCI_ConnectionCreate'
undefined reference to `OCI_GetServerMajorVersion'
....
[Error] ld returned 1 exit status

En teoría es porque tengo que añadir el parámetro -locilib a la hora de compilar así que me voy a:

- Herramientas - Opciones del Compilador - Pestaña Compilador …. y aquí puedo agregar el parámetro "-ocilib":
a - en la zona superior (al llamar al compilar)-> y obtengo "cannot find -locilib"
b - en la zona inferior (a la línea de comandos del linker) -> y obtengo "[Error] unrecognized command line option '-static-libgcc-locilib'"

en resumen... que no hay manera...

¿Alguien que pueda iluminarme?

Gracias!!


**************
El origen de todo esto es que me gustaría hacer una pequeña app que "intentara" conectarse al servidor, y solo en el caso de que lo lograra, tirara un par de comandos.
Soy novato con c /c++.

A ver si podéis ayudarme.

Saludos!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder