[elephant-devel] Testing

Ian Eslick eslick at csail.mit.edu
Mon Feb 19 13:15:15 UTC 2007


Does this work for generating the DLL for libberkeley-db.c?

gcc -shared -mno-cygwin -mwindows -std=c99 --export-all-symbols  
libberkeley-db.def libberkeley-db.c -o libberkeley-db.dll

I can include the memutils .def file so this single command is easy  
to invoke from asdf instead of via a shell script or makefile.

Ian

On Jan 23, 2007, at 7:48 PM, franks-muc at web.de wrote:

>
> I tried the new elephant on winXP.
>
> 1. Allegro8 trial:
>
> Error: In :IMPORT list, the symbol "ARRAY-TYPE-FROM-BYTE" not found  
> in package #<The ELEPHANT package>
> [condition type: PACKAGE-ERROR]
>
> when loading
> c:\lisp\binaries\allegro-a8.0-mswindows-x86\lisp\libraries\elephant 
> \src\elephant\serializer1.fasl
>
> 2. LispWorks 5 pro
>
> in file memutil.lisp
>
> This creates an error:
>
> (def-foreign-type array-or-pointer-char
>       #+allegro (:array :char)
>       #+(or cmu sbcl scl openmcl) (* :char))
>
> changed 2nd line to:
>       #+(or allegro lispworks) (:array :char)
> don't know whether it is the correct selection
>
> Then:
>
> Compilation aborted due to error between functions:
>   Package SB-KERNEL not found.
>
> when compiling this:
> ;; A non-back-compatible change was made in SBCL 8 moving to SBCL 9,
> ;; in that the function copy-from-system-area disappeared.
> ;; This code is an attempt to allow compilation under bothe SBCL 8  
> and SBCL 9.
> ;; Thanks to Juho Snellman for this idiom.
> (eval-when (:compile-toplevel)
>   (defun new-style-copy-p ()
>     (if (find-symbol "COPY-UB8-FROM-SYSTEM-AREA" "SB-KERNEL")
> 	'(:and)
> 	'(:or)))
>   )
>
> I then commented out all forms depending on
> ;#+#.(elephant-memutil::new-style-copy-p) and
> ;#-#.(elephant-memutil::new-style-copy-p)
>
> in file package lisp
>
> Compilation aborted due to error between functions:
>   Duplicated names in "ELEPHANT" defpackage: "ELE".
>
> I replaced
>  (:nicknames ele :ele)
> with
>  (:nicknames :ele)
>
> In file metaclasses.lisp
>
> **++++ Error in (DEFCLASS ELEPHANT:PERSISTENT):
>   Defining function :DBCN-SPC-PST visible from package KEYWORD.
>
> The accessor function stars with colon. I deleted the colon.
>
> In file classes.lisp
>
> Error
> Defining (METHOD ENSURE-CLASS-USING-CLASS :AROUND ((EQL NIL) T))  
> visible from packages COMMON-LISP, CLOS.
>
> No idea what to do.
>
>
> 3. I was able to use elephant 6.0 with ACL 7 trial
>
> wherein I used cygwin to produce the dll s, and I copied the dll,  
> with a newer date than the source, into the
> directory with binaries to prevent recompilation started with run- 
> shell-command from asdf, which does not seem
> to work on windows.
>
> This is the script for libmemutil.dll:
>
> gcc -mno-cygwin -mwindows -std=c99 -c libmemutil.c
> dlltool -z libmeutil.def --export-all-symbols -e exports.o -l  
> libmemutil.lib libmemutil.o
> gcc -shared -mno-cygwin -mwindows libmemutil.o exports.o -o  
> libmemutil.dll
>
> And this is the script for libsleepycat.dll:
>
> gcc -mno-cygwin -mwindows -c -Wall -std=c99 -L/c/DB/Berkeley\ DB\  
> 4.4.20/lib/ -I/c/DB/Berkeley\ DB\ 4.4.20/include/ libsleepycat.c
> dlltool -z libsleepycat.def --export-all-symbols -e exports.o -l  
> libsleepycat.lib libsleepycat.o
> gcc -shared -mno-cygwin -mwindows -L/c/DB/Berkeley\ DB\ 4.4.20/bin/  
> -llibdb44 libsleepycat.o exports.o -o libsleepycat.dll
>
> (I don't know how to use variables in shell scripts)
>
>
> 4. I will try again
>
> ______________________________________________________________________ 
> _
> Viren-Scan für Ihren PC! Jetzt für jeden. Sofort, online und  
> kostenlos.
> Gleich testen! http://www.pc-sicherheit.web.de/freescan/?mc=022222
>
> _______________________________________________
> elephant-devel site list
> elephant-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/elephant-devel




More information about the elephant-devel mailing list