X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=doc%2Fintro.xml;h=1c7ed2e7ec34fdb5c2104a286383924869b71a2d;hb=7c52ed0a7fb4d3c191d4454576a4c761ef2a146d;hp=c6a16ac201f4b4b62e345da518298f0a01a63e81;hpb=26a6925af6882174d868c1977dfd0844c40b9541;p=clsql.git diff --git a/doc/intro.xml b/doc/intro.xml index c6a16ac..1c7ed2e 100644 --- a/doc/intro.xml +++ b/doc/intro.xml @@ -1,7 +1,7 @@ + %myents; ]> @@ -23,14 +23,15 @@ History &clsql; is written by Kevin M. Rosenberg and based substantially - on Pierre R. Mai's excellent &maisql; package. The main changes from &maisql; - are: + on Pierre R. Mai's excellent &maisql; package. Recently, the UncommonSQL + package has been ported and integrated with &clsql;. The main changes + from &maisql; are: - Optimized loading of integer and floating-point fields. + port from the &cmucl; FFI to &uffi;. - port from the &cmucl; FFI to &uffi;. + Optimized loading of integer and floating-point fields. new &acl; ODBC interface back-end. @@ -39,7 +40,8 @@ compatibility layer for &cmucl; specific code. - much improved robustness for the &mysql; back-end. + much improved robustness for the &mysql; back-end + along with version 4 client library support. improved system loading. @@ -50,6 +52,9 @@ transaction support. + + UncommonSQL support. + @@ -59,34 +64,30 @@ &asdf; - &clsql; uses &asdf; to compile and load its - components. &asdf; is included in the &cclan; collection. + + &clsql; uses &asdf; to compile and load its components. + &asdf; is included in the &cclan; + collection. &uffi; - &clsql; uses &uffi; - as a Foreign Function Interface (FFI) to support multiple &cl; - implementations. + + &clsql; uses &uffi; + as a Foreign Function Interface + (FFI) to support + multiple &cl; implementations. - - You can download &uffi; from its FTP site. There - are zip files for Microsoft Windows systems and gzipped tar files for - other systems. - &md5; &clsql;'s postgresql-socket interface uses Pierre Mai's md5 - module. If you plan to use - this interface please download the md5 module from ftp://clsql.b9.com. + module. @@ -100,7 +101,7 @@ &lw; v4.3 on Debian Linux and Microsoft Windows XP. &cmucl; 18e on Debian Linux, FreeBSD 4.5, and Solaris 2.8. &sbcl; 0.8.5 on Debian Linux. - &scl; 1.2 on Debian Linux. + &scl; 1.1.1 on Debian Linux. &openmcl; 0.14 on Debian Linux PowerPC. @@ -111,9 +112,12 @@ Currently, &clsql; supports the following databases: - &mysql; v3.23.51. - &postgresql; v7.2 with both direct API and TCP socket connections. - Allegro's ODBC interface (&aodbc;) using iODBC ODBC manager. + &mysql; v3.23.51 and v4.0.15. + &postgresql; v7.2 with both direct API and TCP + socket connections. + &sqlite;. + Allegro's ODBC interface (&aodbc;) using iODBC + ODBC manager. @@ -138,30 +142,36 @@ parameters and return values. The &ffi; in most &clsql; 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. + 32-bit integers. The helper libraries reside in the directories + uffi and db-mysql. - 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. - + + &mswindows; + + Files named Makefile.msvc are supplied + for building the libraries under Microsoft Windows. Since + &mswindows; does not come with that compiler, compiled + DLL and LIB library files are + supplied with &clsql;. + + + + + &unix; + + Files named Makefile are supplied for + building the libraries under &unix;. Loading the + .asd files automatically invokes + make when necessary. So, manual + building of the helper libraries is not necessary on most + &unix; systems. However, the location of the &mysql; library + files and include files may need to adjusted in + db-mysql/Makefile on non-Debian + systems. + + - 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. - @@ -182,13 +192,14 @@ make libs Load &md5; module - If you plan to use the clsql-postgresql-socket interface, you must load the md5 module. - Unzip or untar the cl-md5 distribution, which creates a directory for the cl-md5 files. - Add that directory to &asdf;'s asdf:*central-registry*. - You can do that by pushing the pathname of the directory onto this variable. - The following example code assumes the cl-md5 files reside in the - /usr/share/lisp/cl-md5/ - directory. + If you plan to use the clsql-postgresql-socket interface, you + must load the md5 module. Unzip or untar the cl-md5 + distribution, which creates a directory for the cl-md5 files. + Add that directory to &asdf;'s + asdf:*central-registry*. You can do that by + pushing the pathname of the directory onto this variable. The + following example code assumes the cl-md5 files reside in the + /usr/share/lisp/cl-md5/ directory. (push #P"/usr/share/lisp/cl-md5/" asdf:*central-registry*) (asdf:operate 'asdf:load-op :md5) @@ -199,21 +210,24 @@ make libs Load &clsql; modules - Unzip or untar the &clsql; distribution which creates a directory - for the &clsql; files. Add that directory to &asdf;'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. + Unzip or untar the &clsql; distribution which creates a + directory for the &clsql; files. Add that directory to &asdf;'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. The below example show loading + all &clsql; systems. + -(push #P"/usr/share/lisp/clsql/" asdf:*central-repository*) -(asdf:operate 'asdf:load-op 'clsql-base) ; base clsql package -(asdf:operate 'asdf:load-op 'clsql-mysql) ; MySQL interface -(asdf:operate 'asdf:load-op 'clsql-postgresql) ; PostgreSQL interface +(push #P"/usr/share/lisp/clsql/" asdf:*central-registry*) +(asdf:operate 'asdf:load-op 'clsql-base) ; base CLSQL package +(asdf:operate 'asdf:load-op 'clsql-mysql) ; MySQL interface +(asdf:operate 'asdf:load-op 'clsql-postgresql) ; PostgreSQL interface (asdf:operate 'asdf:load-op 'clsql-postgresql-socket) ; Socket PGSQL interface -(asdf:operate 'asdf:load-op 'clsql-aodbc) ; Allegro ODBC interface -(asdf:operate 'asdf:load-op 'clsql) ; main clsql package +(asdf:operate 'asdf:load-op 'clsql-aodbc) ; Allegro ODBC interface +(asdf:operate 'asdf:load-op 'clsql) ; main CLSQL package @@ -221,12 +235,13 @@ make libs Run test suite - After loading &clsql;, you can execute the test suite. A configuration - file named .clsql-test.config must be created - in your home directory. There are instructures on the format of that file - in the tests/tests.lisp file in the &clsql; - source directory. After creating that file, you can run the test suite - with &asdf;: + After loading &clsql;, you can execute the test suite. A + configuration file named + .clsql-test.config must be created in + your home directory. There are instructures on the format of + that file in the tests/tests.lisp file in + the &clsql; source directory. After creating that file, you + can run the test suite with &asdf;: (asdf:operate 'asdf:test-op 'clsql)