btw, I just tried the threaded version of sbcl (1.0.39) which I built from macports and it worked with no problems with all the same code (same cffi and cl-opengl packages), including my opencv libraries. I've not investigated what sbcl (or cffi) maybe doing that is different in this case, but it all seems to be working.
On Thu, Aug 5, 2010 at 8:20 AM, Gary Byers gb@clozure.com wrote:
The "trace/bkpt trap" happens - as you've already confirmed - when a thread other than the initial thread tries to open/initialize a particular shared library. (I'm fairly sure that the library in question is CoreFoundation, which is used by many other things on OSX.)
Alex's XMLisp stuff runs on top of CCL's Cocoa environment, which takes great care to ensure that the Cocoa framework (and therefore CoreFoundation) are loaded on the initial thread. (If it didn't, it would run into the same breakpoint trap. Honest.)
[~] gb@antinomial> ccl Welcome to Clozure Common Lisp Version 1.6-dev-r14118M-trunk (DarwinX8632)! ;;; Two lisp processes are running: the listener, and the initial ;;; process. Each of these lisp processes is implemented as a ;;; native OS thread. ? :proc 1 : -> listener [Active] 0 : Initial [Sleep] ;;; Let's try to open the CoreFoundation library from the listener ;;; process. ? (open-shared-library "CoreFoundation.framework/CoreFoundation") Trace/BPT trap
Lots of other OSX libraries will (directly or transitively) load CoreFoundation. CoreFoundation's initialization code checks in 10.6 to see if it's being called on the initial thread; if not, it executes an illegal debugging instruction and the process terminates. That's not a particulary graceful way to fail, but that's what happens.
I hope that this is clear; apologies to everyone to which it was already clear.
On Thu, 5 Aug 2010, k2msmith@gmail.com wrote:
Are you running this on clozure 1.5 with Snow Leopard MAC OS (ie: version
10.6.4 ) ?
On Aug 5, 2010 4:36am, Alexander Repenning ralex@cs.colorado.edu wrote:
XMLisp http://code.google.com/p/xmlisp/ works fine, i.e., it is not an
OpenGL problem.
alex
On Aug 2, 2010, at 4:11 AM, Kevin Smith wrote:
further to this message.. I tried the lastest svn "trunk" release of ccl
(which incidentally looks like it has some extra goodies in it for the mac platform).. Here is what I get (after startup)..
Welcome to Clozure Common Lisp Version 1.5-dev-r13523M-trunk
(DarwinX8664)!
? (require :cl-opengl) Trace/BPT trap
All other require packages got loaded successfully on startup prior. I
played around with "trace" and "step" but none of those debugging functions seem to give me the equivalent of a "stack trace' in C. Not sure how to proceed to find out where it is crashing...
Thanks, Kevin
On Sun, Aug 1, 2010 at 6:04 PM, Kevin Smith k2msmith@gmail.com> wrote:
The only hurdle for me for trying out (and maybe switching) to clozure
on the mac platform is that I can't seem to get the cl-opengl package loaded. I get the error: "Trace/BPT trap" when I try to load that package. (All other dependent packages like cffi, loaded successfully).
I am using ccl64, version 1.5 on Darwin/MAC OS (DarwinX8664). Latest
version of cl-opengl.
I believe I also tried it on the 32-bit ccl. Same problem. It looks
like it only compiles a few source files in the cl-opengl package before it dies.
If someone can point out to me how I can trace this to provide more
information on where it is crashing or maybe someone has run across this already with this particular package.
Thanks, Kevin
Openmcl-devel mailing list Openmcl-devel@clozure.com http://clozure.com/mailman/listinfo/openmcl-devel
Prof. Alexander Repenning University of ColoradoComputer Science DepartmentBoulder, CO 80309-430 vCard: http://www.cs.colorado.edu/~ralex/AlexanderRepenning.vcf
cl-opengl-devel@common-lisp.net