I am trying to install ignite odbc driver, I have installed ignite following these steps
https://apacheignite.readme.io/docs/getting-started#installation
# Unpack the source package $ unzip -q apache-ignite-{version}-src.zip $ cd apache-ignite-{version}-src # Build In-Memory Data Fabric release (without LGPL dependencies) $ mvn clean package -DskipTests # Build In-Memory Data Fabric release (with LGPL dependencies) $ mvn clean package -DskipTests -Prelease,lgpl # Build In-Memory Hadoop Accelerator release # (optionally specify version of hadoop to use) $ mvn clean package -DskipTests -Dignite.edition=hadoop [-Dhadoop.version=X.X.X]
After that, added IGNITE_HOME path pointing to ignite directory. Also installed ODBC driver manager http://www.unixodbc.org/
After that, followed these steps,
http://apacheignite.gridgain.org/docs/odbc-driver#section-building-on-linux
But I get this error at "make"
In file included from src/statement.cpp:29:0: ./include/ignite/odbc/statement.h:614:18: warning: ‘template<class> class std::auto_ptr’ is deprecated [-Wdeprecated-declarations] std::auto_ptr<query::Query> currentQuery; ^ In file included from /usr/include/c++/5/bits/locale_conv.h:41:0, from /usr/include/c++/5/locale:43, from /usr/include/c++/5/iomanip:43, from ../common/include/ignite/guid.h:27, from ./include/ignite/odbc/app/application_data_buffer.h:25, from ./include/ignite/odbc/diagnostic/diagnostic_record_storage.h:27, from ./include/ignite/odbc/diagnostic/diagnosable.h:21, from ./include/ignite/odbc/query/query.h:25, from ./include/ignite/odbc/query/data_query.h:21, from src/statement.cpp:19: /usr/include/c++/5/bits/unique_ptr.h:49:28: note: declared here template<typename> class auto_ptr; ^ CXX src/type_traits.lo CXX src/utility.lo CXXLD libignite-odbc.la ar: `u' modifier ignored since `D' is the default (see `U') make[3]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc' make[2]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc' Making all in odbc-test make[2]: Entering directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc-test' Making all in include make[3]: Entering directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc-test/include' make[3]: Nothing to be done for 'all'. make[3]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc-test/include' make[3]: Entering directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc-test' CXX src/teamcity/teamcity_boost.o src/teamcity/teamcity_boost.cpp:22:47: fatal error: boost/test/unit_test_suite_impl.hpp: No such file or directory compilation terminated. Makefile:625: recipe for target 'src/teamcity/teamcity_boost.o' failed make[3]: *** [src/teamcity/teamcity_boost.o] Error 1 make[3]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc-test' Makefile:661: recipe for target 'all-recursive' failed make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc-test' Makefile:426: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp' Makefile:358: recipe for target 'all' failed make: *** [all] Error 2
I am using Ubuntu 16.04 and apache ignite 1.8.0 latest version with Java 8.
Update:
sudo apt-get install libboost-all-dev libtoolize && aclocal && autoheader && automake --add-missing && autoreconf ./configure --enable-odbc --disable-node --disable-core make src/row_test.cpp:192:18: warning: unused variable ‘rowNum’ [-Wunused-variable] const size_t rowNum = 2; ^ CXX src/utility_test.o CXX src/queries_test.o In file included from ../core/include/ignite/cache/cache.h:40:0, from ../core/include/ignite/ignite.h:26, from src/queries_test.cpp:35: ../core/include/ignite/impl/cache/cache_impl.h:27:48: fatal error: ignite/impl/interop/interop_target.h: No such file or directory compilation terminated. Makefile:625: recipe for target 'src/queries_test.o' failed make[3]: *** [src/queries_test.o] Error 1 make[3]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc-test' Makefile:661: recipe for target 'all-recursive' failed make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp/odbc-test' Makefile:426: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/me/install/apache-ignite/modules/platforms/cpp' Makefile:358: recipe for target 'all' failed make: *** [all] Error 2
Update 2: Running with disabling tets worked
libtoolize && aclocal && autoheader && automake --add-missing && autoreconf ./configure --enable-odbc --disable-node --disable-core --disable-tests make make install
Though the installation is complete, still pdo connection throws exception
odbcinst -j
unixODBC 2.3.4 DRIVERS............: /usr/local/etc/odbcinst.ini SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini FILE DATA SOURCES..: /usr/local/etc/ODBCDataSources USER DATA SOURCES..: /home/me/.odbc.ini SQLULEN Size.......: 8 SQLLEN Size........: 8 SQLSETPOSIROW Size.: 8
cat cat /usr/local/etc/odbcinst.ini
[Apache Ignite] Description=Apache Ignite Driver=/usr/local/lib/libignite-odbc.so Setup=/usr/local/lib/libignite-odbc.so DriverODBCVer=03.00 FileUsage=0 UsageCount=1
cat /usr/local/etc/odbc.ini - empty file - Do i need to add anything to it ? - Tried adding above config but same exception.
cat /home/me/.odbc.ini
[Apache Ignite] Description=Apache Ignite Driver=/usr/local/lib/libignite-odbc.so DriverODBCVer=03.00 FileUsage=0 UsageCount=1 $ignite = $dbh = new \PDO('odbc:Apache Ignite'); $ignite->prepare('select * from Person'); [PDOException] SQLSTATE[08001] SQLConnect: 0 [unixODBC]Failed to establish connection with the host.