gpt4 book ai didi

compilation - 无法弄清楚如何运行 .scm(使用 guile 或 scm)文件

转载 作者:行者123 更新时间:2023-12-02 08:20:24 27 4
gpt4 key购买 nike

我创建了一个 abc.scm 文件并尝试使用“ guild compile ”、“ scm ”和“|10956 guile "Ubuntu 终端中的命令。

对于“ guild compile abc.scm ”,我得到输出“写道`/home/tarunmaganti/.cache/guile/ccache/2.0-LE-8-2.0/home/tarunmaganti/abc.scm。走'”
我找到该文件并像这样运行 - “ ./abc.scm.go ”表示权限被拒绝。
当我使用“ chmod 755 ”或“ chmod 777 ”授予必要的权限时,我收到类似的错误 - “bash: ./abc.scm.go: cannot execute binary file : Exec 格式错误”。

scm 任何文件名.scm ”只是打开了 scm 解释器。

guile 无论文件名.scm 什么都不做。

官方 GNU/Guile Scheme 的链接不是很有帮助。

请帮我。我想创建一个 guile 方案脚本文件。编译它并将其作为 C/C++ 程序运行。是否可以?
如果不能编译,我想知道,如何至少运行的脚本文件。 GNU/guile 方案 MIT-Scheme .

{非常感谢逐步介绍,我仍然是使用 Ubuntu 和 Scheme 的初学者。}

提前致谢。

最佳答案

您可以使用 shebang 符号来创建 Guile 脚本(-s 在较新版本的 Guile 中是可选的):

#!/usr/bin/guile -s
!#
(display "Hello, world!\n")

请注意 !#在第二行。 Guile 治疗 #!作为块注释的开始(类似于标准 Scheme 中的 #|),必须使用 !# 终止(类似于标准方案中的 |#)。

如果您希望脚本将任何命令行选项传递给 Guile 本身,请阅读 meta switch .这是一个这样的例子:
#!/usr/bin/guile \
-e main -s
!#
(define (main args)
(if (null? (cdr args))
(format #t "Hello, world!~%")
(for-each (lambda (name)
(format #t "Hello, ~a!~%" name))
(cdr args))))

关于compilation - 无法弄清楚如何运行 .scm(使用 guile 或 scm)文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37773025/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com