platform: x86 lisp version: dev-lisp/sbcl-1.0 USE="doc ldb source threads unicode" uffi version: dev-lisp/cl-uffi-1.5.16 USE="" cl-sql version: dev-lisp/cl-sql-3.7.7 USE="mysql odbc postgres -sqlite -sqlite3" lisp init: dev-lisp/gentoo-init-0.1
I am using cl-sql to talk to oracle databases (mostly 9i, 10g too). When I use the tarball from Kevin Rosenberg's site, cl-sql works fine for oracle when loaded in this way:
(eval-when (:compile-toplevel) (push #P"/usr/share/common-lisp/source/md5/" asdf:*central-registry*) ;; necessary? (push #P"/usr/share/common-lisp/source/uffi/" asdf:*central-registry*) (push #P"/usr/share/common-lisp/source/clsql/" asdf:*central-registry*) (asdf:operate 'asdf:load-op 'uffi) (asdf:operate 'asdf:load-op 'clsql-oracle))
But the portage version of cl-sql does not work for oracle. If it does, it must be different somehow. Is the portage version of cl-sql supposed to work with oracle? What am I doing wrong?
I notice there are cl-sql USE flags for every database engine except oracle. Should I be using the ODBC component of cl-sql or something?
Simply grepping for symbol names reveals significant differences in teh tarball source vs. the portage source:
# portage version: root@sphinktoo:/usr/share/common-lisp/source# grep -nr -e 'clsql-oracle' * clsql/sql/fddl.lisp:97: ;; Fixme: move to clsql-oracle clsql/sql/fddl.lisp:99: (when (and (find-package 'clsql-oracle) clsql/sql/fddl.lisp:103: (symbol-name '#:clsql-oracle)))))
# tarball version: root@hly20666lx:/usr/share/common-lisp/source# grep -nr -e 'clsql-oracle' * clsql/doc/appendix.xml:763: prior to loading the <filename>clsql-oracle</filename> &asdf; clsql/doc/appendix.xml:767: (asdf:operate 'asdf:load-op 'clsql-oracle) clsql/doc/appendix.xml:776:(asdf:operate 'asdf:load-op 'clsql-oracle) clsql/sql/fddl.lisp:97: ;; Fixme: move to clsql-oracle clsql/sql/fddl.lisp:99: (when (and (find-package 'clsql-oracle) clsql/sql/fddl.lisp:103: (symbol-name '#:clsql-oracle))))) clsql/db-oracle/oracle-constants.lisp:17:(in-package #:clsql-oracle) clsql/db-oracle/oracle-api.lisp:17:(in-package #:clsql-oracle) clsql/db-oracle/oracle-sql.lisp:16:(in-package #:clsql-oracle) clsql/db-oracle/oracle-objects.lisp:16:(in-package #:clsql-oracle) clsql/db-oracle/oracle-package.lisp:19:(defpackage #:clsql-oracle clsql/db-oracle/oracle-loader.lisp:17:(in-package #:clsql-oracle) clsql/db-oracle/oracle-loader.lisp:47: :module "clsql-oracle" clsql/db-oracle/foreign-resources.lisp:14:(in-package #:clsql-oracle) clsql/clsql-oracle.asd:5:;;;; Name: clsql-oracle.asd clsql/clsql-oracle.asd:10:;;;; $Id: clsql-oracle.asd 9476 2004-05-25 08:41:56Z kevin $ clsql/clsql-oracle.asd:19:(defpackage #:clsql-oracle-system (:use #:asdf #:cl)) clsql/clsql-oracle.asd:20:(in-package #:clsql-oracle-system) clsql/clsql-oracle.asd:24:(defsystem clsql-oracle clsql/clsql-oracle.asd:25: :name "clsql-oracle"
Carlos Konstanski