标签: asdf

ASDF 上缺少 Ruby 版本

我正在尝试通过 asdf 安装 Ruby 2.7.7,但最新版本似乎是 2.7.6。有人知道如何在 asdf 上支持新的 Ruby 版本吗?

可用的 Ruby 2.7.x 版本

尝试安装 Ruby 2.7.7,预计版本可用。

ruby asdf

22
推荐指数
1
解决办法
6343
查看次数

没有为命令yarn安装预设版本

我的 asdf 有问题。\n我已经安装了最新的 Nodejs。

\n
asdf install nodejs latest\n... \nasdf local nodejs latest / asdf global nodejs latest \n
Run Code Online (Sandbox Code Playgroud)\n

但如果我尝试

\n
yarn                                                        \xef\x80\x97 \nNo preset version installed for command yarn\nPlease install a version by running one of the following:\n\nasdf install nodejs 18.0.0\n\nor add one of the following versions in your config file at /Users/../project-name/.tool-versions\nnodejs 14.17.0\nnodejs 19.0.1\n
Run Code Online (Sandbox Code Playgroud)\n

但我的项目结构中的 .tool-version 已经包含它:

\n
nodejs 18.0.0\nnodejs 19.0.1\n
Run Code Online (Sandbox Code Playgroud)\n

(对于我的项目,我需要nodejs >= 18)\n我正在使用苹果M1芯片。

\n

zsh asdf node.js yarn-lock.json apple-m1

16
推荐指数
1
解决办法
9012
查看次数

'RSA_SSLV23_PADDING' 未声明(在此函数中首次使用);您的意思是“RSA_NO_PADDING”吗?使用 asdf 编译 ruby​​-2.7.1 时

我在使用 asdf 或 rvm 编译 ruby​​-2.7.1 时遇到此问题。

\n

它甚至还会导致 erlang 安装出现问题。

\n

错误可能是

\n
generating x86_64-linux-fake.rb\nx86_64-linux-fake.rb updated\n./miniruby -I./lib -I. -I.ext/common  ./tool/runruby.rb --extout=.ext  -- --disable-gems -r./x86_64-linux-fake ./tool/rbinstall.rb --make="make" --dest-dir="" --extout=".ext" --mflags="" --make-flags="" --data-mode=0644 --prog-mode=0755 --installed-list .installed.list --mantype="doc" --rdoc-output=".ext/rdoc" --html-output=".ext/html"\n/tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/lib/rubygems/core_ext/kernel_require.rb:92:in `require': libssl.so.1.1: cannot open shared object file: No such file or directory - /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/.ext/x86_64-linux/openssl.so (LoadError)\n    from /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/lib/rubygems/core_ext/kernel_require.rb:92:in `require'\n    from /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/.ext/common/openssl.rb:13:in `<top (required)>'\n    from /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/lib/rubygems/core_ext/kernel_require.rb:92:in `require'\n    from /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/lib/rubygems/core_ext/kernel_require.rb:92:in `require'\n    from /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/lib/rubygems/security.rb:12:in `<top (required)>'\n    from /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/lib/rubygems/core_ext/kernel_require.rb:92:in `require'\n    from /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/lib/rubygems/core_ext/kernel_require.rb:92:in `require'\n    from /tmp/ruby-build.20220515222647.5893.R2e2fF/ruby-2.7.1/lib/rubygems/package.rb:44:in `<top (required)>'\n …
Run Code Online (Sandbox Code Playgroud)

c ruby openssl asdf

13
推荐指数
2
解决办法
5947
查看次数

如何将本地项目添加到由quicklisp配置的asdf

我想通过asdf向已知项目添加一个本地项目,但由于*central-registry*aslis由quicklisp 安装和配置,并且指向"#P/home/user/quicklisp/quicklisp /",其中包含.lisp文件.我不知道该怎么做,因为手册解释了目录中的符号链接会做到这一点,但我不想在quicklisp里乱搞.(它确实可以作为修补程序使用!)

因此:如何将本地项目添加到由quicklisp安装和配置的asdf(NOT QUICKLISP)?

common-lisp asdf quicklisp

8
推荐指数
2
解决办法
4188
查看次数

如何从 .asd 文件的目录编译并运行 Common Lisp 程序?

我有以下目录结构:

\n
my-project/\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 my-project.asd\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 package.lisp  # defpackage.\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 utils.lisp    # Functions used by main.lisp.\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 main.lisp     # Main program.\n
Run Code Online (Sandbox Code Playgroud)\n

my-project.asd:

\n
(defsystem "my-project"\n  :components ((:file "package")\n               (:file "utils")\n               (:file "main")))\n
Run Code Online (Sandbox Code Playgroud)\n

package.lisp:

\n
(defpackage :com.example\n  (:use :cl))\n
Run Code Online (Sandbox Code Playgroud)\n

utils.lisp:

\n
(in-package :com.example)\n\n(defun double (x)\n  (* x 2))\n
Run Code Online (Sandbox Code Playgroud)\n

main.lisp:

\n
(in-package :com.example)\n\n(format t "~a" (double 3))\n
Run Code Online (Sandbox Code Playgroud)\n

问题是:如何main.lisp使用 ASDF 进行编译和运行?

\n

我能够通过以下方式编译并运行该程序:

\n
$ mv my-project ~/common-lisp/.\n$ sbcl\n* (require :asdf)\n* (asdf:load-system :my-project)\n
Run Code Online (Sandbox Code Playgroud)\n

然而,这是非常愚蠢的。我不想将我的项目转移到~/common-lisp/ …

common-lisp asdf

8
推荐指数
1
解决办法
3245
查看次数

ltk(常见的lisp)的问题

我使用asdf-install将ltk安装到Steel Bank Common Lisp,但我甚至无法开始使用它V_V.下面的代码是文档中最简单的示例,几乎是逐字复制的.


(asdf:operate 'asdf:load-op :ltk)

(defun hello-1()
  (with-ltk ()
   (let ((b (make-instance 'button
                           :master nil
                           :text "Press Me"
                           :command (lambda ()
                                      (format t "Hello World!~&")))))
     (pack b))))
(hello-1)
Run Code Online (Sandbox Code Playgroud)

这是我从sbcl得到的错误消息:


> ; in: LAMBDA NIL
;     (PACK B)
; 
; caught STYLE-WARNING:
;   undefined function: PACK

;     (WITH-LTK NIL
;      (LET ((B (MAKE-INSTANCE 'BUTTON :MASTER NIL :TEXT "Press Me" :COMMAND #)))
;        (PACK B)))
; 
; caught STYLE-WARNING:
;   undefined function: WITH-LTK
; 
; compilation unit finished
;   Undefined …
Run Code Online (Sandbox Code Playgroud)

lisp ltk common-lisp asdf

7
推荐指数
1
解决办法
1373
查看次数

使用asdf:defsystem和quickproject定义包的正确方法

我是一个Lisp初学者试图理解如何正确使用Lisp包系统,同时学习LTK用于GUI编程,使用SBCL 1.0.55.0.debian和Limp 0.3.4(如果重要的话,还有Debian Wheezy).我使用aptitude包管理器安装了ASDF(包cl-asdf&cl-common-lisp-controller),然后我使用Quicklisp网站上的说明安装了Quicklisp(http://www.quicklisp.org/beta/index.html) (不是来自Debian存储库)然后我(ql:quickload 'ltk)在SBCL控制台中安装了LTK .

hello-1.lisp(直接来自LTK教程):

(defun hello-1()
    (with-ltk ()
              (let ((b (make-instance ’button
                                      :master nil
                                      :text "Press Me"
                                      :command (lambda ()
                                                       (format t "Hello World!~&")))))
                   (pack b))))
Run Code Online (Sandbox Code Playgroud)

如果我在一个新的SBCL Lisp的图像编译这个直上,我得到的消息WITH-LTKPACK未定义功能,'BUTTON是不确定的变量.

所以,我发现我需要加载'ltk,然后再使用in-package.我能够运行它,我首先要使用(ql:quickload 'ltk)(in-package :ltk)在SBCL控制台.但是,我仍然是一个'BUTTON未定义变量的错误消息.

* (ql:quickload 'ltk)
To load "ltk":
  Load 1 ASDF system:
    ltk
; Loading "ltk"

(LTK)
* (in-package :ltk)

#<PACKAGE "LTK">
* (compile-file "/home/user/code/lisp/hello-1.lisp")

; caught …
Run Code Online (Sandbox Code Playgroud)

lisp sbcl common-lisp asdf quicklisp

7
推荐指数
1
解决办法
3473
查看次数

Common Lisp源代码组织

我是CL的新手,正在使用AllegroCL.我正在试图弄清楚如何组织我的源代码以满足以下要求:

  1. 我想阻止src代码包含我的测试套件.
  2. 我想以可移植的方式声明项目依赖项(src和test deps),以便我团队中的其他成员不必修改他们的系统.
  3. 我希望在签到时简化持续集成,包括构建和测试.

我一直在尝试创造性地使用ASDF来满足这些要求,但我无法做到这一点.其他人如何解决这个问题?这两个要求是不是"Lispy"?

common-lisp asdf

7
推荐指数
3
解决办法
1476
查看次数

如何在没有asdf-install的情况下为常见的lisp安装新软件包

我是cl的新手,我刚刚学会了使用asdf-install安装软件包,但我不知道它是如何工作的,我想知道如何可以手动安装软件包,然后我就能理解root中文件的使用目录的源代码,谢谢.

common-lisp asdf

6
推荐指数
1
解决办法
2181
查看次数

mason.vim 使用错误的 python / nvim 版本 -&gt; 所需的 asdf 版本

我已经在 nvim 中设置了 mason.vim,它正在安装软件包,并且我已经安装了几个 python 软件包。

它似乎无法识别我的全局 pip 配置,因此我运行了 :checkhealth,并在 mason.vim 部分下显示为使用我的默认 python3、pip3 系统配置。

这在过去不会成为问题,但我开始使用 asdf,它将 python 安装到不同的目录,并将其别名为: /Users//.asdf/shims/python

我不知道如何更改 lsp 配置级别的设置来定义正确 bin 的路径。

想知道是否有人对如何更新这些设置有任何想法。

谢谢。

I tried defining the python host param, but that didn't work. 

Run Code Online (Sandbox Code Playgroud)
vim.g.python_host_prog = '/Users/<user>/.asdf/shims/python'
vim.g.python3_host_prog = '/Users/<user>/.asdf/shims/python'
Run Code Online (Sandbox Code Playgroud)

:checkhealth output:
Run Code Online (Sandbox Code Playgroud)

梅森: require("mason.health").check()

mason.nvim 报告

  • 好的:neovim 版本 >= 0.7.0
  • 警告:Go:不可用
  • 警告:货物:不可用
  • 好的:luarocks/Users/<user>/.asdf/installs/lua/5.4.4/luarocks/bin/luarocks 3.9.1
  • 好的:红宝石ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.arm64e-darwin21]
  • 好的:红宝石宝石3.0.3.1
  • 警告:作曲家:不可用 …

python lua asdf neovim

6
推荐指数
0
解决办法
1872
查看次数

标签 统计

asdf ×10

common-lisp ×6

lisp ×2

quicklisp ×2

ruby ×2

apple-m1 ×1

c ×1

ltk ×1

lua ×1

neovim ×1

node.js ×1

openssl ×1

python ×1

sbcl ×1

yarn-lock.json ×1

zsh ×1