2016-05-31 13 views
1

我总是收到一个sdl2.dll找不到的错误。我试图在安装lispbuilder-sdl之前安装cffi,并且cffi安装成功,但sdl总是失败,出现这样的错误,任何人都可以帮忙吗?如何在Windows 10中安装lisp sdl(无法加载外部库(LIBSDL2)。打开共享对象“SDL2.dll”时出错:)

[package json].................................... 
[package json-rpc]................................ 
[package cl-ppcre]................................ 
.................................................. 
[package autowrap]................................ 
[package autowrap.minimal]........................ 
.................................................. 
[package plus-c].................................. 
[package bordeaux-threads]........................ 
[package com.metabang.trivial-timeout]............ 
[package trivial-channels.queue].................. 
[package trivial-channels]........................ 
[package sdl2-ffi]................................ 
[package sdl2-ffi.accessors]...................... 
[package sdl2-ffi.functions]...................... 
[package sdl2].................................... 
[package sdl2-examples] 
debugger invoked on a CFFI:LOAD-FOREIGN-LIBRARY-ERROR in thread 
#<THREAD "main thread" RUNNING {10029A49E3}>: 
    Unable to load foreign library (LIBSDL2). 
    Error opening shared object "SDL2.dll": 
The specified module could not be found. 

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL. 

restarts (invokable by number or by possibly-abbreviated name): 
    0: [RETRY      ] Try loading the foreign library again. 
    1: [USE-VALUE     ] Use another library instead. 
    2: [TRY-RECOMPILING    ] Recompile library and try loading it again 
    3: [RETRY      ] Retry 
            loading FASL for #<CL-SOURCE-FILE "sdl2" "library">. 
    4: [ACCEPT      ] Continue, treating 
            loading FASL for #<CL-SOURCE-FILE "sdl2" "library"> 
            as having been successful. 
    5:         Retry ASDF operation. 
    6: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the 
            configuration. 
    7: [ABORT      ] Give up on "sdl2" 
    8:         Exit debugger, returning to top level. 
+0

相关:http://stackoverflow.com/q/22213133/124319 – coredump

+0

我没有使用cygwin。没有它我怎么能这样做? –

+0

你的“sdl2.dll”位于哪里?我只是总是把它放在我从中加载文件的本地目录中,而且似乎找到了。 –

回答

1

素描是使用SDL2和OpenGL为Common Lisp的图书馆有suggestion这个Windows操作系统在libsdl网页和 工作

下载SDL2,SDL2_IMAGE和SDL2_TTF的dll将它们复制到Windows可以找到的地方 - \ Windows \ System32将 工作。复制SDL2_TTF时,请确保复制归档中提供的所有dll ,而不仅仅是TTF。

现在您将需要一个libffi dll。 这样做的一种方法是从源代码编译,但为了快速简单的解决方案,您只需找到一个可信源并使用它们的版本即可。例如,如果 在Windows上使用Emacs,则可以在 emacs \ bin中找到libffi-6.dll。将其复制到早先将sdl2 dll复制到 的同一目录中。

也是一个很好的图书馆是cepl

,有以下建议:

https://github.com/cbaggers/cepl/blob/master/README.md#windows-c-library-hack

如果您在获得C库加载,只是需要 排除问题out lisp是否可以找到它们,请尝试将它们放在与lisp exe相同的 文件夹中。例如C:\ Program Files \ sbcl。

相关问题