[Ecls-list] threads-enabled ecl crashes on mac os x [10.5.1, Intel]
Kamil Shakirov
kamils80 at gmail.com
Sun Jan 20 10:26:06 UTC 2008
Hi,
I'd like to embed CL scripting in my threaded C++ application. ECL
(0.9j-p1) was compiled with threads support. First, I wanted to test
the code snippet from the example (examples/threads/import/import.c)
that comes with ECL distribution. This works fine on Linux and win32
but fails on mac os x (intel). Is that known issue?
Here is my log:
devbook% uname -a
Darwin devbook.local 9.1.0 Darwin Kernel Version 9.1.0: Wed Oct 31
17:46:22 PDT 2007; root:xnu-1228.0.2~1/RELEASE_I386 i386
devbook% ./configure --prefix=/Users/kamil/local/lisp/ecl --enable-
threads
devbook% ecl
;;; Loading #P"/Users/kamil/local/lisp/ecl/lib/ecl/ASDF.fas"
; loading system definition from
; /Users/kamil/.lisp/systems/asdf-binary-locations.asd into #<ASDF44
package>
;;; Loading "/Users/kamil/.lisp/systems/asdf-binary-locations.asd"
; registering #<SYSTEM ASDF-BINARY-LOCATIONS 22249120> as ASDF-BINARY-
LOCATIONS
;;; Loading #P"/Users/kamil/local/lisp/ecl/lib/ecl/cmp.fas"
;;; Loading #P"/Users/kamil/local/lisp/ecl/lib/ecl/sysfun.lsp"
;;; Loading "/Users/kamil/.lisp/site/asdf-binary-locations/dev/
main.lisp"
ECL (Embeddable Common-Lisp) 0.9j
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help. Top level.
> *features*
(:ASDF :DARWIN :IEEE-FLOATING-POINT :RELATIVE-PACKAGE-
NAMES :UNICODE :DFFI
:CLOS-STREAMS :CMU-FORMAT :DLOPEN :CLOS :THREADS :BOEHM-GC :ANSI-CL
:COMMON-LISP :ECL :COMMON :PENTIUM3 :FFI :PREFIXED-API)
> (mp:all-processes)
(#<process SI:TOP-LEVEL 00018fe0>)
> (flet ((count-numbers (end-number)
(dotimes (i end-number)
(format t "~%;;; Counting: ~i" i)
(terpri)
(sleep 1))))
(mp:process-run-function 'counter #'count-numbers 10))
zsh: bus error ecl
devbook% make
g++ -g -Wall -D_DEBUG -D_REENTRANT `ecl-config --cflags` -MD -c main.cpp
g++ main.o -o proba `ecl-config --ldflags`
devbook% ./proba
zsh: bus error ./proba
devbook% gdb proba
GNU gdb 6.3.50-20050815 (Apple version gdb-768) (Tue Oct 2 04:07:49
UTC 2007)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for
details.
This GDB was configured as "i386-apple-darwin"...Reading symbols for
shared libraries ..... done
(gdb) run
Starting program: /Users/kamil/temp/ecl_app.git/src/proba
Reading symbols for shared libraries ++++. done
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
[Switching to process 51624 thread 0x1103]
0x00000000 in ?? ()
Thanks for your help.
More information about the ecl-devel
mailing list