Я использую NetBeans 8.0 на Windows 7 x64 и пытаюсь подключиться к Oracle 12.1 с помощью Occi. Я скачал 12.1.0.2.0 Oracle Instant Client для Windows x64 Basic + SDK. Установил его просто разархивировав в D: \ instantclient_12_1. А затем добавил этот путь в переменную Windows Path.
Netbeans использует компилятор mingw64
В свойствах проекта в Make> категория компилятора C ++ для включаемого каталога (-I) D: / instantclient_12_1 / sdk / include
В каталоге компоновщиков дополнительных библиотек (-L) есть D: / instantclient_12_1
#include <iostream>
#include <occi.h>
using namespace std;
using namespace oracle::occi;
/*
*
*/
int main(int argc, char** argv) {
Environment *env = Environment::createEnvironment();
Environment::terminateEnvironment(env);
return 0;
}
Но во время создания проекта я получаю:
g++ -o dist/Debug/MinGW_64-Windows/cppapplication_1 build/Debug/MinGW_64-Windows/main.o
build/Debug/MinGW_64-Windows/main.o: In function `main':
C:\NetBeansProjects\CppApplication_1/main.cpp:17: undefined reference to `oracle::occi::Environment::createEnvironment(oracle::occi::Environment::Mode, void*, void* (*)(void*, unsigned long long), void* (*)(void*, void*, unsigned long long), void (*)(void*, void*))'
C:\NetBeansProjects\CppApplication_1/main.cpp:18: undefined reference to `oracle::occi::Environment::terminateEnvironment(oracle::occi::Environment*)'
collect2.exe: error: ld returned 1 exit status
make.exe[2]: *** [dist/Debug/MinGW_64-Windows/cppapplication_1.exe] Error 1
make.exe[2]: Leaving directory `/c/NetBeansProjects/CppApplication_1'
make.exe[1]: *** [.build-conf] Error 2
make.exe[1]: Leaving directory `/c/NetBeansProjects/CppApplication_1'
make.exe": *** [.build-impl] Error 2
Я пытался добавить библиотеки «oraociei12.dll», «oraocci12d.dll» (в режиме отладки), «oraocci12.dll», «orannzsbb12.dll», «oci.dll» с параметром -l, но без изменений.
В чем дело?
Задача ещё не решена.