| ---------- Status ------------------------------------------------------------- | |
| The code is on a PREVIEW level. PREVIEW means pre-alpha. | |
| ---------- Requirements ------------------------------------------------------- | |
| The MySQL driver for OpenOffice.org (MySQL Connector/OpenOffice.org - C/OOo) | |
| requires two external libraries to be build: | |
| 1) The MySQL Client Library (libmysql) | |
| 2) The MySQL Connector/C++ Library (libmysqlcppcon) | |
| At the time of writing neither of the two libraries are part of the CWS! | |
| Before you can build the MySQL driver for OpenOffice.org you must install | |
| the two required libraries on your system before you can compile the driver. | |
| You need the two libraries because the MySQL driver for OpenOffice.org | |
| does not feature an implementation of the MySQL Client Server | |
| communication protocol. The protocol implementation is part of the MySQL | |
| Client Library. And the SDBC(X) style OpenOffice.org driver is implemented as a | |
| wrapper of the MySQL Connector/C++ Library which implements a JDBC interface and | |
| in turn uses the C based MySQL Client Library. | |
| 1) MySQL Client Library (libmysql) | |
| The MySQL Client Library (libmysql) is part of the MySQL Server. You need to | |
| download and install the MySQL Server. Use a binary distribution of | |
| MySQL 5.0.x or MySQL 5.1.x. Check the MySQL manual for instructions, e.g. | |
| for Unix: | |
| http://dev.mysql.com/doc/refman/5.1/en/installing-binary.html | |
| The typical installation path of the libmysql.so on Unix is | |
| /usr/local/mysql/lib/mysql/ . | |
| 2) MySQL Connector/C++ (libmysqlcppcon) | |
| Download and install the latest version of the MySQL Connector/C++, see | |
| http://forge.mysql.com/wiki/Connector_C++ . Check out the source | |
| from the bzr repository. | |
| 3) Tweaking library paths | |
| At the time of writing you might have to *manually* tweak library paths and | |
| library names by patching makefile.mk. This is a temporary hack. The makefile | |
| will be improved later. | |
| However, for the moment check the makefile.mk if the compilation fails due to | |
| "missing" libraries (= libraries not found). For example, check the following | |
| settings: | |
| MYSQL_INCDIR=/usr/local/include | |
| MYSQL_LIBDIR=/usr/local/lib | |
| [...] | |
| MYSQL_INCDIR=/usr/local/include | |
| MYSQL_LIBDIR=/usr/local/lib | |
| [...] | |
| MYSQL_INC=-I$(MYSQL_INCDIR) | |
| MYSQL_LIB=-L$(MYSQL_LIBDIR) -lmysqlclient -rdynamic -lz -lcrypt -lnsl -lm | |
| MYSQL_LIBFILE=$(MYSQL_LIBDIR)$/libmysqlclient.so.16 | |
| MYSQL_CPPCONN_LIBFILE=$(MYSQL_LIBDIR)$/libmysqlcppconn.so | |
| [...] | |
| A common issue is libmysqlclient.so.15 vs. libmysqlclient.so.16 . | |