X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2Fintro.sgml;h=5f0b76b81fb91fc1f413a324b83574d6d99b0d3e;hb=027a7e4184689652fe762bf079e37b6a0e3c41ca;hp=25c672ea4429c990335d493de3aecac286b5b58e;hpb=01e78fad2d9c4c18f11ec032c80afa59212ba109;p=clsql.git diff --git a/doc/intro.sgml b/doc/intro.sgml index 25c672e..5f0b76b 100644 --- a/doc/intro.sgml +++ b/doc/intro.sgml @@ -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. + + +