xref: /aoo4110/main/mysqlc/source/README (revision b1cdbd2c)
1*b1cdbd2cSJim Jagielski---------- Status -------------------------------------------------------------
2*b1cdbd2cSJim Jagielski
3*b1cdbd2cSJim JagielskiThe code is on a PREVIEW level. PREVIEW means pre-alpha.
4*b1cdbd2cSJim Jagielski
5*b1cdbd2cSJim Jagielski---------- Requirements -------------------------------------------------------
6*b1cdbd2cSJim Jagielski
7*b1cdbd2cSJim JagielskiThe MySQL driver for OpenOffice.org (MySQL Connector/OpenOffice.org - C/OOo)
8*b1cdbd2cSJim Jagielskirequires two external libraries to be build:
9*b1cdbd2cSJim Jagielski
10*b1cdbd2cSJim Jagielski 1) The MySQL Client Library (libmysql)
11*b1cdbd2cSJim Jagielski 2) The MySQL Connector/C++ Library (libmysqlcppcon)
12*b1cdbd2cSJim Jagielski
13*b1cdbd2cSJim JagielskiAt the time of writing neither of the two libraries are part of the CWS!
14*b1cdbd2cSJim JagielskiBefore you can build the MySQL driver for OpenOffice.org you must install
15*b1cdbd2cSJim Jagielskithe two required libraries on your system before you can compile the driver.
16*b1cdbd2cSJim Jagielski
17*b1cdbd2cSJim JagielskiYou need the two libraries because the MySQL driver for OpenOffice.org
18*b1cdbd2cSJim Jagielskidoes not feature an implementation of the MySQL Client Server
19*b1cdbd2cSJim Jagielskicommunication protocol. The protocol implementation is part of the MySQL
20*b1cdbd2cSJim JagielskiClient Library. And the SDBC(X) style OpenOffice.org driver is implemented as a
21*b1cdbd2cSJim Jagielskiwrapper of the MySQL Connector/C++ Library which implements a JDBC interface and
22*b1cdbd2cSJim Jagielskiin turn uses the C based MySQL Client Library.
23*b1cdbd2cSJim Jagielski
24*b1cdbd2cSJim Jagielski1) MySQL Client Library (libmysql)
25*b1cdbd2cSJim Jagielski
26*b1cdbd2cSJim JagielskiThe MySQL Client Library (libmysql) is part of the MySQL Server. You need to
27*b1cdbd2cSJim Jagielskidownload and install the MySQL Server. Use a binary distribution of
28*b1cdbd2cSJim JagielskiMySQL 5.0.x or MySQL 5.1.x. Check the MySQL manual for instructions, e.g.
29*b1cdbd2cSJim Jagielskifor Unix:
30*b1cdbd2cSJim Jagielski
31*b1cdbd2cSJim Jagielski http://dev.mysql.com/doc/refman/5.1/en/installing-binary.html
32*b1cdbd2cSJim Jagielski
33*b1cdbd2cSJim JagielskiThe typical installation path of the libmysql.so on Unix is
34*b1cdbd2cSJim Jagielski/usr/local/mysql/lib/mysql/ .
35*b1cdbd2cSJim Jagielski
36*b1cdbd2cSJim Jagielski2) MySQL Connector/C++ (libmysqlcppcon)
37*b1cdbd2cSJim Jagielski
38*b1cdbd2cSJim JagielskiDownload and install the latest version of the MySQL Connector/C++, see
39*b1cdbd2cSJim Jagielskihttp://forge.mysql.com/wiki/Connector_C++ . Check out the source
40*b1cdbd2cSJim Jagielskifrom the bzr repository.
41*b1cdbd2cSJim Jagielski
42*b1cdbd2cSJim Jagielski3) Tweaking library paths
43*b1cdbd2cSJim Jagielski
44*b1cdbd2cSJim JagielskiAt the time of writing you might have to *manually* tweak library paths and
45*b1cdbd2cSJim Jagielskilibrary names by patching makefile.mk. This is a temporary hack. The makefile
46*b1cdbd2cSJim Jagielskiwill be improved later.
47*b1cdbd2cSJim Jagielski
48*b1cdbd2cSJim JagielskiHowever, for the moment check the makefile.mk if the compilation fails due to
49*b1cdbd2cSJim Jagielski"missing" libraries (= libraries not found). For example, check the following
50*b1cdbd2cSJim Jagielskisettings:
51*b1cdbd2cSJim Jagielski
52*b1cdbd2cSJim Jagielski  MYSQL_INCDIR=/usr/local/include
53*b1cdbd2cSJim Jagielski  MYSQL_LIBDIR=/usr/local/lib
54*b1cdbd2cSJim Jagielski  [...]
55*b1cdbd2cSJim Jagielski  MYSQL_INCDIR=/usr/local/include
56*b1cdbd2cSJim Jagielski  MYSQL_LIBDIR=/usr/local/lib
57*b1cdbd2cSJim Jagielski  [...]
58*b1cdbd2cSJim Jagielski  MYSQL_INC=-I$(MYSQL_INCDIR)
59*b1cdbd2cSJim Jagielski  MYSQL_LIB=-L$(MYSQL_LIBDIR) -lmysqlclient -rdynamic -lz -lcrypt -lnsl -lm
60*b1cdbd2cSJim Jagielski  MYSQL_LIBFILE=$(MYSQL_LIBDIR)$/libmysqlclient.so.16
61*b1cdbd2cSJim Jagielski  MYSQL_CPPCONN_LIBFILE=$(MYSQL_LIBDIR)$/libmysqlcppconn.so
62*b1cdbd2cSJim Jagielski  [...]
63*b1cdbd2cSJim Jagielski
64*b1cdbd2cSJim JagielskiA common issue is libmysqlclient.so.15 vs. libmysqlclient.so.16 .
65*b1cdbd2cSJim Jagielski
66