3

我使用 Emacs\Slime\SBCL\QuickLisp\Cygwin(Cywgin 的新手,我对此一无所知)我,根据这个 GNU 链接http://common-lisp.net/project/gsll/,尝试按照以下说明进行操作下载和安装部分:

“您需要确保安装了与 GNU Scientific Library (GSL) 和 libffi 相关的库和头文件;您的发行版可能将这些命名为 libgsl0-dev 和 libffi-dev。一旦安装它们并加载了 quicklisp 文件:运行(ql:快速加载“gsll”)“

但它不工作。运行时我在 emacs 中收到此错误消息 (ql:quickload "gsll") Unable to load any of the alternatives: ("libffi-6.dll" "libffi-5.dll" "libffi.dll") [Condition of type CFFI:加载外国图书馆错误]

我已经正确安装了 quicklisp,我一直在使用它,所以我知道它不是那个....我不太了解上述网站摘录的这一部分(上图)

“您的发行版可能将这些命名为 libgsl0-dev 和 libffi-dev。” 一旦它们被安装并且你已经加载了 quicklisp 文件”

好吧,我确实有点,quicklisp似乎无法用“(ql:system-apropos“libffi”)”或“(ql:system-apropos“libffi”)”找到它们,网站(上面的链接)也命名了这些依赖项,我认为在这段摘录中:

“要求

GSLL 应该在任何支持以下功能的 Common Lisp 实现和平台组合中工作:

GSL
CFFI and cffi-grovel, version 0.11.0 or newer; callbacks and foreign-funcall must be supported.
trivial-garbage
Antik
ASDF
Osicat
lisp-unit, (Optional) necessary to run the tests
FSBV, (Optional) necessary for functions using complex scalars or simulated annealing
iterate and asdf-system-connnections, (Optional) provides a convenient way to iterate over elements or indices of vectors or matrices."

以上我有 CFFI CFFI-Grovel,琐碎垃圾,asdf,迭代,Antik(全部来自 quicklisp)但仍然无法弄清楚请帮助我逐步说明 Windows 8 64 位与完美运行的 Emacs\ Slime\SBCL\QuickLisp\Cygwin 已安装并可用...我将不胜感激任何和所有建议..谢谢

注意:现在这些 - 摘自网站http://comments.gmane.org/gmane.lisp.gsll/257

To load "gsll":
Load 3 ASDF systems:
alexandria cl-ppcre split-sequence
Install 20 Quicklisp releases:
antik asdf-system-connections babel bordeaux-threads
cffi chunga cl+ssl cl-base64 drakma flexi-streams fsbv
gsll iterate osicat puri static-vectors
trivial-features trivial-garbage trivial-gray-streams
usocket"

除了奥西卡特,我什么都有。GSLL 和 fsbv。当我尝试使用 (ql:quickload "gsll") 加载 GSLL 时,我得到:

Error while trying to load definition for system gsll from pathname
D:/Users/W/AppData/Roaming/quicklisp/dists/quicklisp/software/gsll-20130312-git/gsll.asd:
Unable to load any of the alternatives:
("libffi-6.dll" "libffi-5.dll" "libffi.dll")
[Condition of type ASDF:LOAD-SYSTEM-DEFINITION     ERROR]

当我尝试加载 Osicat 时

(ql:quickload "osicat") 

我得到:

Error while invoking <COMPILE-OP (:VERBOSE NIL) {26FB8F59}> on
<CL-SOURCE-FILE "osicat" "src" "osicat">
[Condition of type ASDF:COMPILE-ERROR]   

并且 quicklisp 没有 FSBV ......任何帮助将不胜感激。

;;;;;;;;;;;;;;;;编辑;;;;;;;;;;;;;;;;;;; @Nelson 在这方面取得了新的进展......我通过了:

“尝试从路径名 D:/Users/W/AppData/Roaming/quicklisp/dists/quicklisp/software/gsll-20130312-git/gsll.asd 加载系统 gsll 的定义时出错:无法加载任何替代方案:( "libffi-6.dll" "libffi-5.dll" "libffi.dll") [ASDF 类型的条件:LOAD-SYSTEM-DEFINITION ERROR]"

我在 Emacs 中运行 (ql:quickload "gsll") 时出现错误消息。我通过从这里下载 LIBFFI tarball 来做到这一点:

http://sourceware.org/libffi/ ..页面顶部的链接。

然后我按照本教程http://phosphor-escence.blogspot.com/2011/08/build-libffi-and-libyaml-on-mingw-for.html 使用正确安装的 MinGW 构建 LIBFFI(安装在 C:\ MinGW)我在这里学会了正确安装 MinGw:http: //www.mingw.org/wiki/Getting_Started

在构建 LIBFFI 之后,我将它的路径 - D:\libffi-3.0.13 - 添加到我的“系统”环境变量“路径”变量中:D: 是我的根驱动器。

我通过将 *.dll 放在搜索栏中搜索 Windows Explorer 中的 D:\libffi-3.0.13 文件夹,找到 libffi-6.dll 并将其放在 D:\Program Files (x86)\Steel Bank Common Lisp\1.1 中。 4 以便 SBCL 可以访问它,libffi-6.dll 在前面的错误消息中命名:

尝试从路径名 D:/Users/W/AppData/Roaming/quicklisp/dists/quicklisp/software/gsll-20130312-git/gsll.asd 加载系统 gsll 的定义时出错:无法加载任何替代方案:(“ libffi-6.dll" "libffi-5.dll" "libffi.dll") [ASDF 类型的条件:LOAD-SYSTEM-DEFINITION ERROR]

虽然工作尚未完成......现在我收到此错误消息,我将从明天开始:

“尝试从路径名 D:/Users/W/AppData/Roaming/quicklisp/dists/quicklisp/software/gsll-20130312-git/gsll.asd 加载系统 gsll 的定义时出错:

外部进程以代码 1 退出。命令为:“C:/MinGW/bin/gcc.exe”“-m32”“-I/Program Files (x86)/Steel Bank Common Lisp/1.1.4/site/cffi/” "-o" "D:\Program Files (x86)\Steel Bank Common Lisp\1.1.4\site\cffi\libffi\libffi-win32.exe" "D:\Program Files (x86)\Steel Bank Common Lisp\ 1.1.4\site\cffi\libffi\libffi-win32.c" 输出为:

[ASDF 类型的条件:LOAD-SYSTEM-DEFINITION-ERROR]"

在此期间的任何帮助将不胜感激:

;;;;;;;;;;解决了;;;;;;;;;; 它的教程链接即将推出,并将在这一点下发布<-----here。

这里是 Lispers 同学 ..我在 Windows 7 和 8 上为您提供 GSLL:https ://wnetai.wordpress.com/how-to-install-gsll_the-gnu-scientific-library-for-lisp-on-windows-7 -and-windows-8/

这是 GSLL 错误消息及其解决方案的链接:https ://wnetai.wordpress.com/how-to-install-gsll_the-gnu-scientific-library-for-lisp-on-windows-7-and-windows -8/错误消息-您可能会在安装时获得-gsll-and-their-solutions/

我正在为 GSLL 开发一个代码片段数据库,从线性代数开始,它将与上面两个链接在同一个博客上,所以请继续关注这里和我的 Lisp 博客。它基本上是使用代码片段、片段描述和示例制作的如何使用 GSLL 教程。

4

3 回答 3

1

您的问题是未安装 libffi 的开发版本(带有头文件)。cffi-devel 邮件列表中可能有 Windows 用户可以帮助您;我建议你在那里发布你的问题。就 lisp 库而言,quicklisp 应该解决这个问题,它们与您的问题无关。(而且,FSBV 已过时且不需要;感谢您指出需要更新文档。)(此外,emacs 和 slime 与问题无关,应删除标签。)

于 2013-04-28T00:56:20.343 回答
0

让 GSLL 在 Windows 7 上运行有什么运气吗?我一直在尝试安装该软件,甚至使用 Dependency Walker 来跟踪可能需要但仍无法使其运行的任何丢失的 DLL。我确实让它在 Linux 上运行良好,但我希望它在 Window 7 下运行。

于 2013-04-22T16:07:58.603 回答
0

似乎您需要将这些库安装到您的系统中,您必须找到 Windows 等效项。

对于 debian/ubuntu: http: //pkgs.org/download/libffi-dev

这些不是通过 quicklisp 安装的,而是通过系统包管理器安装的,在您的情况下,您必须找到与 Windows 兼容的版本并安装它。

于 2013-04-18T11:16:20.590 回答