2016-11-13 142 views
0

我试图安装Lisplab asdf和quicklisp,但它们都失败了。如何用quicklisp安装软件包

我使用sbcl和粘液。

任何人都可以帮助我安装。我只是想在lisp中操纵矩阵:)

谢谢,lisper!

+3

似乎lisplab不包括在quicklisp。从这里下载tarbal:https://common-lisp.net/project/lisplab/download/并在'quicklisp/local-projects /'目录内部解压缩。然后在emacs中输入'(ql:quickload:lisplab)'祝你好运。 – tsikov

+2

Lisplab仅在sbcl上进行测试。它不会在quicklisp上发生变化。 – Pascal

+1

我上次查看时,lisplab在Fortran中遇到了一些与使用它的cl接口有关的问题,无法编译。你可能会更喜欢看mgl-mat https://github.com/melisgl/mgl-mat。干杯 –

回答

0

做关于使用quicklisp安装口齿不清库的第一件事,就是看它是否是可用通过quicklisp:

(请注意这个答案我使用antergos配置罗斯威尔泥SBCL)

CL-USER> (ql:system-apropos "lisplab") 
; No value 

在这种情况下,它不包括在内的项目,你可以更新你的quicklisp,但在这种情况下,它是没有必要的。这个项目不在quicklisp,可能不会在未来。那么你可以选择继续安装,或寻找此一atertnative thake一个看起来quickdocs这是一个关于数学搜索

让我们尝试安装此quicklisp这样说:

我可以加载本地项目不是Quicklisp的一部分?是的。 最简单的方法是将项目的目录放在Quicklisp的 local-projects目录中。例如:

$ cd ~/quicklisp/local-projects/ 
$ git clone git://github.com/xach/format-time.git 

那么该项目将加载通过(QL:quickload“格式的时间”)

此外,任何系统文件,这可以通过航空自卫队的源注册表 系统中找到可装载QL:quickload。

举例来说,如果你有一个系统文件我-project.asd在 /项目/我的项目/,你可以做这样的事情:

(push #p"/projects/my-project/" asdf:*central-registry*) 
(ql:quickload "my-project") 

如果我的项目依赖于系统,其通过Quicklisp可用, 尚未安装,它们将自动安装。

因此对于这个项目,我将下载压缩包并将其提取或下载到local-projects文件夹中,就像它在评论中建议的一样。在我的情况是./roswell/local-projects但你的情况应该是cd〜/ quicklisp/local-projects/

之后,你可以加载quicklisp,但我相信由于这个库不被维护,它会有错误

如果你想用lisp来操纵矩阵,我推荐你使用lisp-matrix请确保已经在你的计算机上安装了lapack并仔细阅读了文档,并仔细阅读了自述文件末尾的代码,试验。

CL-USER> (ql:quickload :lisp-matrix) 
To load "lisp-matrix": 
    Load 1 ASDF system: 
    lisp-matrix 
; Loading "lisp-matrix" 

(:LISP-MATRIX) 
CL-USER> (in-package :lisp-matrix-user) 
#<PACKAGE "LISP-MATRIX-USER"> 
LISP-MATRIX-USER> (M* (ones 2 2 :implementation :lisp-array) 
    (ones 2 2 :implementation :lisp-array)) 
#<LA-SIMPLE-MATRIX-DOUBLE 2 x 2 
2.0d0 2.0d0 
2.0d0 2.0d0> 

(要知道,国外阵列不适用于整数工作)