X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2Fintro.sgml;h=753ca3d59858f992c4e9be3f1df40d9a24fb54eb;hb=33dcd7b49025344bd4c9827d1cd2b6e6857a0c03;hp=ceef1f03ecf23999ff71ff4b693431a19d7913e7;hpb=524b45aa17284490eaf73704de8c885438f8860a;p=clsql.git diff --git a/doc/intro.sgml b/doc/intro.sgml index ceef1f0..753ca3d 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. @@ -46,21 +46,15 @@ are: &defsystem; - &clsql; uses &defsystem to compile and load its -components. &defsystem; is included in the &clocc; collection. The -defsystem version in the pre-packaged distribution is rather old and -may not function well. The version in CVS tree tree works quite -well. For convenience, a copy of the latest defsystem at the FTP -site -of &clsql;. + &clsql; uses &asdf; to compile and load its +components. &asdf; is included in the &cclan; collection. &uffi; - &clsql; uses &clsql; uses &uffi; as a Foreign Function Interface (FFI) to support multiple &cl; @@ -76,13 +70,14 @@ 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.2 on Debian Linux, FreeBSD 4.5, and Microsoft Windows XP. + &lw; v4.2 on Debian Linux and Microsoft Windows XP. + &cmucl; 18d on Debian Linux, FreeBSD 4.5, and Solaris 2.8. + &sbcl; 0.7.8 on Debian Linux, FreeBSD 4.5, and Solaris 2.8. + &openmcl; 0.13 on Debian Linux. @@ -92,9 +87,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.51. + &postgresql; v7.2 with both direct API and TCP socket connections. + Allegro's ODBC interface (&aodbc;) using iODBC ODBC manager. @@ -114,47 +109,82 @@ 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 -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 -&defsystem;. The following example code assumes the &uffi; files reside in the -/usr/local/src/lisp/uffi directory. + Unzip or untar the &uffi; distribution which creates a directory +for the &uffi; files. Add that directory to Defsystem's asdf:*central-registry*. +You can do that by pushing the pathname of the directory onto this variable. + The following example code assumes the &uffi; files reside in the +/usr/share/lisp/uffi/ directory. -(mk:add-registry-location #P"/usr/local/src/lisp/uffi") -(mk:load-system :uffi) +(push #P"/usr/share/lisp/uffi/" asdf:*central-repository*) +(asdf:oos 'asdf:load-op :uffi) + + Load &clsql; modules + + Unzip or untar the &clsql; distribution which creates a directory +for the &clsql; files. Add that directory to Defsystem's asdf:*central-registry*. +You can do that by pushing the pathname of the directory onto this variable. + The following example code assumes the &clsql; files reside in the +/usr/share/lisp/clsql/ directory. You need to load, at a minimum, +the main :clsql system and at least one interface system. + +(push #P"/usr/share/lisp/clsql/" asdf:*central-repository*) +(asdf:oos 'asdf:load-op :clsql-base) ; base clsql package +(asdf:oos 'asdf:load-op :clsql-mysql) ; MySQL interface +(asdf:oos 'asdf:load-op :clsql-postgresql) ; PostgreSQL interface +(asdf:oos 'asdf:load-op :clsql-postgresql-socket) ; Socket PGSQL interface +(asdf:oos 'asdf:load-op :clsql-aodbc) ; Allegro ODBC interface +(asdf:oos 'asdf:load-op :clsql) ; main clsql package + + + + + + 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. + + +