From: Rolf Wester
Subject: CLSQL install problem
Date: 
Message-ID: <bquug9$em6$01$1@news.t-online.com>
Hi,

I'm trying to build CLSQL using CMUCL18e and MySQL 4.0.16. After setting 
the paths to my MySQL (it's not in standard directories) corrctly in 
db-mysql/Makefile and db-mysql/mysql-loader.lisp I issued make in 
db-mysql and then I evalueted:

(asdf:oos 'asdf:load-op :clsql-base)
(asdf:oos 'asdf:load-op :clsql-mysql)

in CMUCL. The first one runs without problems, the second one ends in 
the error message listed below. I would be very appreciative for any 
help to get clsql running.

Thanks in advance

Regards

Rolf Wester


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;



; Byte Compiling Top-Level Form:
; Converted MYSQL-NUM-FIELDS.
; Compiling UFFI:DEF-FUNCTION "mysql_num_fields":
; Converted CLSQL-MYSQL-EOF.
; Compiling UFFI:DEF-FUNCTION ("mysql_eof" CLSQL-MYSQL-EOF):
; Converted MYSQL-EOF.
; Compiling DEFUN MYSQL-EOF:
; Byte Compiling Top-Level Form:
; Converted MYSQL-ERROR.
; Compiling UFFI:DEF-FUNCTION ("mysql_error" MYSQL-ERROR):
; Converted MYSQL-ERROR-STRING.
; Compiling DEFUN MYSQL-ERROR-STRING:
; Converted MYSQL-ERRNO.
; Compiling UFFI:DEF-FUNCTION "mysql_errno":
; Converted MYSQL-INFO.
; Compiling UFFI:DEF-FUNCTION ("mysql_info" MYSQL-INFO):
; Byte Compiling Top-Level Form:
; Converted MYSQL-INFO-STRING.
; Compiling DEFUN MYSQL-INFO-STRING:
; Converted CLSQL-MYSQL-DATA-SEEK.
; Compiling UFFI:DEF-FUNCTION "clsql_mysql_data_seek":
; Converted MYSQL-DATA-SEEK.
; Compiling DEFUN MYSQL-DATA-SEEK: ; [GC threshold exceeded with 
17,998,976 bytes in use.  Commencing GC.]
; [GC completed with 4,445,200 bytes retained and 13,553,776 bytes freed.]
; [GC will next occur when at least 16,445,200 bytes are in use.]

; Byte Compiling Top-Level Form:

; /home/wester/usr/apache/modlisp/clsql-1.8.7/db-mysql/mysql-api.x86f 
written.
; Compilation finished in 0:00:03.
; Loading 
#p"/home/wester/usr/apache/modlisp/clsql-1.8.7/db-mysql/mysql-api.x86f".

Undefined foreign symbol: "mysql_connect"
    [Condition of type KERNEL:SIMPLE-PROGRAM-ERROR]

Restarts:
   0: [CONTINUE       ] Return NIL from load of 
#p"/home/wester/usr/apache/modlisp/clsql-1.8.7/db-mysql/mysql-api.x86f".
   1: [RETRY-COMPONENT] ASDF::RETRY-COMPONENT
   2: [SKIP-COMPONENT ] ASDF::SKIP-COMPONENT
   3: [ABORT          ] Return to Top-Level.

Debug  (type H for help)

(KERNEL:UNDEFINED-FOREIGN-SYMBOL-ERROR-HANDLER "<error finding name>"
                                                #.(SYSTEM:INT-SAP 
#x3FFFC710)
                                                #<Alien (* #) at #x3FFFC3A8>
                                                (14))
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM:  Source file no longer 
exists:
   target:code/interr.lisp.
0]

From: Eric Marsden
Subject: Re: CLSQL install problem
Date: 
Message-ID: <wzioeukvfk8.fsf@melbourne.laas.fr>
>>>>> "rw" == Rolf Wester <···········@t-online.de> writes:

  rw> I'm trying to build CLSQL using CMUCL18e and MySQL 4.0.16. After
  rw> setting the paths to my MySQL (it's not in standard directories)
  rw> corrctly in db-mysql/Makefile and db-mysql/mysql-loader.lisp I issued
  rw> make in db-mysql and then I evalueted:
  rw> 
  rw> (asdf:oos 'asdf:load-op :clsql-base)
  rw> (asdf:oos 'asdf:load-op :clsql-mysql)
  rw> 
  rw> in CMUCL. The first one runs without problems, the second one ends in
  rw> the error message listed below.

  rw> ; Loading #p"/home/wester/usr/apache/modlisp/clsql-1.8.7/db-mysql/mysql-api.x86f".
  rw> Undefined foreign symbol: "mysql_connect"

I can't help you with the specifics of CLSQL, but before loading a
file that references a foreign symbol (mysql_connect in this case)
into CMUCL, you need to have loaded the corresponding foreign library.
The load of the foreign library may have failed, or possibly the CLSQL
build process is loading it too late. 

Foreign libraries are loaded with EXT:LOAD-FOREIGN, or possibly with
the equivalent UFFI function. 

-- 
Eric Marsden                          <URL:http://www.laas.fr/~emarsden/>
From: Rolf Wester
Subject: Re: CLSQL install problem
Date: 
Message-ID: <br1k7o$hrj$1@nets3.rz.RWTH-Aachen.DE>
Eric Marsden wrote:
>>>>>>"rw" == Rolf Wester <···········@t-online.de> writes:
> 
> 
>   rw> I'm trying to build CLSQL using CMUCL18e and MySQL 4.0.16. After
>   rw> setting the paths to my MySQL (it's not in standard directories)
>   rw> corrctly in db-mysql/Makefile and db-mysql/mysql-loader.lisp I issued
>   rw> make in db-mysql and then I evalueted:
>   rw> 
>   rw> (asdf:oos 'asdf:load-op :clsql-base)
>   rw> (asdf:oos 'asdf:load-op :clsql-mysql)
>   rw> 
>   rw> in CMUCL. The first one runs without problems, the second one ends in
>   rw> the error message listed below.
> 
>   rw> ; Loading #p"/home/wester/usr/apache/modlisp/clsql-1.8.7/db-mysql/mysql-api.x86f".
>   rw> Undefined foreign symbol: "mysql_connect"
> 
> I can't help you with the specifics of CLSQL, but before loading a
> file that references a foreign symbol (mysql_connect in this case)
> into CMUCL, you need to have loaded the corresponding foreign library.
> The load of the foreign library may have failed, or possibly the CLSQL
> build process is loading it too late. 
> 
> Foreign libraries are loaded with EXT:LOAD-FOREIGN, or possibly with
> the equivalent UFFI function. 
> 
Thank you for your reply. Some other mysql foreign functions have been 
compiled before the error occurs so the library should already have been 
loaded. Thanks again.

Rolf Wester