我一直在使用quicklisp安装lispbuilder-sdl系列,但在sdl-gfx中遇到错误:
CL-USER> (ql:quickload "lispbuilder-sdl-gfx")
To load "lispbuilder-sdl-gfx":
Load 1 ASDF system:
lispbuilder-sdl-gfx
; Loading "lispbuilder-sdl-gfx"
...........;
; compilation unit aborted
; caught 1 fatal ERROR condition
Unable to load any of the alternatives:
("libSDL_gfx.dylib" (:FRAMEWORK "SDL_gfx"))
[Condition of type CFFI:LOAD-FOREIGN-LIBRARY-ERROR]我在MacOSX10.6下使用slime+emacs+SBCL。我已经通过这个链接安装了SDL.framework:
http://thirdcog.eu/apps/frameworks#glew
一个名为sdl_with_friends.zip的文件,并将内容放在/Library/Frameworks下。然而,它仍然抱怨找不到框架。对此有什么想法吗?
发布于 2011-07-19 02:02:27
该错误提示它无法加载SDL的动态库。对不起,我不太了解macs上的目录布局(这似乎是你正在工作的地方),所以我不能确切地告诉你如何解决这个问题。但是您应该在某个地方安装了一个名为libSDL_gfx.dylib的文件(可能是这个扩展名),错误消息表明CFFI找不到它。
发布于 2012-05-20 21:27:49
在Mac OSX上安装lispbuilder-sdl的最简单方法是启动SBCL并使用Quicklisp:
(ql:quickload "lispbuilder-sdl")它可能会失败,但您可以将位于"~quicklisp/dists/quicklisp/software/lispbuilder-20110619-svn/lispbuilder-sdl/cocoahelper";just cd中的OS-X特定帮助器库编译到此目录中,然后输入"make“
要验证其是否有效,请尝试执行以下操作:
(ql:quickload "lispbuilder-sdl-examples")
(lispbuilder-sdl-examples:bezier)另一个常见的陷阱是当您使用Emacs / SLIME时。可可位必须在主线程上运行,因此您必须调用如下代码:
#+darwin #+sb-thread
(let ((thread (first (last (sb-thread:list-all-threads)))))
(sb-thread:interrupt-thread thread #'(lambda () (ql:quickload "lispbuilder-sdl-examples")))
(sb-thread:interrupt-thread thread #'(lambda () (lispbuilder-sdl-examples:bezier))))发布于 2012-08-25 11:23:41
使用自制软件,你可以使用brew install sdl_gfx
https://stackoverflow.com/questions/6714714
复制相似问题