X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2Fintro.sgml;h=5f0b76b81fb91fc1f413a324b83574d6d99b0d3e;hb=f8478421f5a0440246f70aa4234ff25f416be7e3;hp=f2f0354afe1313d51661adaa0caf8300bd6ef708;hpb=378b802cff26b596f912aa05a2eb740c4f886d3d;p=clsql.git diff --git a/doc/intro.sgml b/doc/intro.sgml index f2f0354..5f0b76b 100644 --- a/doc/intro.sgml +++ b/doc/intro.sgml @@ -29,7 +29,7 @@ are: compatibility layer for &cmucl; specific code. -improved robustness of the &mysql; back-end. +much improved robustness for the &mysql; back-end. improved system loading. @@ -60,7 +60,7 @@ of &clsql;. &uffi; - &clsql; uses &clsql; uses &uffi; as a Foreign Function Interface (FFI) to support multiple &cl; @@ -76,13 +76,12 @@ other systems. Supported Common Lisp Implementation The implementations that support &clsql; is governed by the supported -implementations of &uffi;. At the time of the initial release of &clsql;, -the following implementations are supported: +implementations of &uffi;. The following implementations are supported: - &acl; v6.1 on Redhat Linux 7.2 and Microsoft Windows. - &lw; v4.2 on Redhat Linux 7.2 and Microsoft Windows. - &cmucl; 18d on Redhat Linux 7.2. + &acl; v6.1 on Redhat Linux 7.2, FreeBSD 4.5, and Microsoft Windows XP. + &lw; v4.2 on Redhat Linux 7.2 and Microsoft Windows XP. + &cmucl; 18d-pre on Redhat Linux 7.2, FreeBSD 4.5, and Solaris 2.8. @@ -92,9 +91,9 @@ the following implementations are supported: Currently, &clsql; supports the following databases: - &mysql; v3.23.49 on Redhat Linux 7.2 and Microsoft Windows. - &postgresql; v7.1 on Redhat Linux 7.2. Support for both direct API connections and TCP socket connections. - Allegro's ODBC interface (&aodbc;) on Redhat Linux 7.2 and Microsoft Windows. + &mysql; v3.23.49. + &postgresql; v7.2 with both direct API and TCP socket connections. + Allegro's ODBC interface (&aodbc;) using iODBC ODBC manager. @@ -114,35 +113,38 @@ the following implementations are supported: - Build <filename>clsql-mysql</filename> helper library - &mysql; uses functions that require 64-bit integer + Build &c; helper libraries + &clsql; uses functions that require 64-bit integer parameters and return values. The &ffi; in most &clsql; -implementations do not support 64-bit integers. Thus, a C helper -library is required to break these 64-bit integers into two compatible +implementations do not support 64-bit integers. Thus, C helper +libraries are required to break these 64-bit integers into two compatible 32-bit integers. -Makefile's for Microsoft Windows and GNU/Solaris systems -are supplied to build this library. In addition, the DLL and LIB +Makefiles for Microsoft Windows and GNU/Solaris systems +are supplied to build the libraries. Since many Microsoft Windows +users don't have access to a compiler, the DLL and LIB files for Microsoft Windows are supplied with the distribution. -To build the library, first move to the directory -interfaces/mysql directory. You may need to -edit Makefile or Makefile.msvc to -correctly specify the location of your &mysql; installation. On UNIX systems, use -the command: - make -On a Microsoft Windows system, -use the command: - -nmake /f -Makefile.msvc - +To build the libraries on a GNU or Solaris, use the shell and +change to the root directory of &clsql;. You may need to edit the file +interfaces/mysql/Makefile to specify the location of your +MySQL installation. The default Makefiles are setup for shared library +linking on Linux. If you are using FreeBSD or Solaris, you will need +to change the linker setting as instructed in the Makefile. +Then, you can give the command + +make libs + +in the root directory of &clsql; to build the libraries +interfaces/mysql/clsql-mysql.so and +interfaces/clsql-uffi/clsql-uffi.so. + Load &uffi; - Unpack the appropriate &uffi; version for your system which creates a directory + Unzip or untar the &uffi; distribution which creates a directory for the &uffi; files. Add that directory to Defsystem's mk:*central-registry*. You can do that by either pushing the pathname of the directory onto this variable, or use the new add-registry-location present in the newest versions of @@ -155,6 +157,39 @@ use the new add-registry-location present in the newest ver + + Load &clsql; modules + + Unzip or untar the &clsql; distribution which creates a directory +for the &clsql; files. Add that directory to Defsystem's mk:*central-registry*. +You can do that by either pushing the pathname of the directory onto this variable, or +use the new add-registry-location present in the newest versions of +&defsystem;. The following example code assumes the &clsql; files reside in the +/usr/local/src/lisp/clsql directory. You need to load, at a minimum, +the main :clsql system and at least one interface system. + +(mk:add-registry-location #P"/usr/local/src/lisp/clsql") +(mk:load-system :clsql) ; main clsql package +(mk:load-system :clsql-mysql) ; MySQL interface +(mk:load-system :clsql-postgresql) ; PostgreSQL interface +(mk:load-system :clsql-postgresql-socket) ; Socket PGSQL interface +(mk:load-system :clsql-aodbc) ; Allegro ODBC interface + + + + + + Run test suite + + After loading &clsql;, you can execute the test program in +the directory ./test-suite. The test file, +tester-clsql +has instructions for creating a test.config. +After creating that file, simple load the test file with Lisp +and the tests should automatically execute. + + +