问题标签 [raco]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
package - 以编程方式确定是否安装了 Racket 包
是否有任何编程方式来确定是否已安装软件包?
我知道raco pkg show
,但它似乎只返回一个字符串,其中包含有关已安装范围的信息。例如,如果我从命令行运行它:
虽然我可以尝试解析这个结果,但目前是否有更直接的方法来以编程方式确定是否安装了包?
package - Racket 中基于平台(或操作系统)的包依赖
我有一个使用平台相关系统库的包,每个库都分离到自己的包中。有没有办法可以根据我安装的平台安装不同的依赖项?
最天真的解决方案是让包依赖于所有这些:
但是mypackage-windows
,mypackage-osx
即使不需要它们,也要安装。更糟糕的是,我需要确保 OS X 和 Windows 特定的软件包在安装在错误的平台上时不会引起问题。
那么,有什么方法可以告诉我raco
只根据每个平台安装我需要的软件包吗?
racket - DrRacket 和终端上的 Racket 交互
该程序在 DrRacket 中运行良好:
它是一个程序的骨架,它不断地从终端交互中读取数据,并对用户的输入和数据状态进行处理。
但是,在终端上,使用
它在第一次输入后终止。有谁知道为什么?它是 read-line 还是 current-input-port 的错误/功能?
macos - 链接到无效运行时的 raco 可执行文件
我通过自制软件安装了球拍。当我尝试使用 raco 创建可执行文件时,根据:
...生成的二进制文件链接到带有无效路径的 Racket 运行时。这可以通过以下方式看到otool -L
:
正确的路径不包含racket/
after lib/
。因此,当您尝试运行二进制文件时,会dyld
抱怨并中止执行。
我可以解决这个问题,使用install_name_tool
:
...但是,显然这不是我一直想做的事情!
大概 raco 从某个地方得到了这条无效的路径。有什么方法可以正确配置吗?
racket - raco 在哪里安装软件包?
默认情况下会在哪里raco pkg install --auto drracket
安装 drracket 包?这是一个预先存在homebrew
的球拍安装。
linker - 将 Racket 程序链接到 Fortran 库
我有一个 Racket 程序,我想链接一个 Fortran 库和另一个库,因为 Fortran API 运行良好。我从 Jens Axel Søgaard 的 Stack Overflow回答中看到,他能够链接到 CBLAS 和 LAPACK。我使用的库是不同的,但我希望我能从 Racket 中使用它们。这会很甜蜜。
我认为我的问题很简单。目前,我构建了可以在所需平台(Windows)上执行的 Racket 程序,如下所示:
在上面,我没有编译或链接到任何其他人的 Fortran 库。现在我将成为,我的raco
命令会是什么样子?假设我有两个需要链接的库: ${LIBPATH}/libeccodes_f90.dll ${LIBPATH}/libeccodes.dll
racket - 如何从脚本运行 raco 命令?
raco
从脚本运行命令的首选方式是什么?
我一直在做类似的事情:
但必须有更好的解决方案。
racket - 撤消 `raco pkg update --clone` 或 `raco pkg install --clone`
当我想在库上工作并提交补丁时,我经常喜欢使用raco pkg install --clone
(或者raco pkg --update clone
如果库已经安装)。
但是,我不小心跑到raco pkg update --clone
了错误的文件夹中,现在我似乎无法让它移动到正确的目录。
我尝试简单地移动目录,但球拍(可以理解)不知道如何处理,我尝试删除目录,但这也不起作用。
我理论上可以卸载该软件包并重新安装它。但是我已经安装了很多依赖于它的软件包,必须卸载所有软件包,然后重新安装它们会很烦人。
我还有其他选择吗,还是我注定要手动卸载并重新安装很多软件包(或者只是重新安装整个 Racket 发行版)?
racket - raco exe 错误 - 来自所需模块中的(放置)表单的动态要求错误
我正在使用 Racket 6.8,当项目在主模块的模块 d中raco exe
包含(place)
表单时,尝试运行创建的 EXE 时出现奇怪的错误。require
这可以通过以下设置重现:
主.rkt
地点.rkt
如果我使用 Racket 解释器运行,这完全可以正常工作:
但是,如果我使用创建 EXE raco exe
,我会得到以下信息:
如果我将该(start-place)
函数移动到 main.rkt,则可执行文件可以正常工作。但是,我不想在我正在从事的主要项目中这样做。
有什么方法可以调用raco exe
以使其正常工作吗?我尝试将 place.rkt 包含在该++lib
选项中,但这会导致raco
崩溃。
racket - 升级 Minimal Racket 和 DrRacket
我在 Mac OS X Sierra 上,我一直在使用自制软件来获得最小的球拍,然后通过 raco 添加我想要的东西。其中一件事是德拉克特。
然而,从 6.10 升级到 6.11 之后,事情变得有点不对劲。当我进行 brew upgrade 时,brew 中的操作进行得很顺利,没有产生任何错误。然而,随后 drracket 未能通过以下方式启动:
dyld:库未加载:/usr/local/Cellar/minimal-racket/6.10/lib/racket/Racket.framework/Versions/6.11_3m/Racket 引用自:/usr/local/bin//DrRacket.app/Contents/ MacOS/DrRacket 原因:找不到图像 [1] 64747 中止 drracket
这似乎表明它对从 6.10 到 6.11 的引用不满意。在谷歌搜索中,我看到 raco 有一个迁移选项,所以我尝试了:
产生:
raco pkg migrate 6.10
没有要安装的“6.10”包
所以我想我会做卸载重新安装舞蹈:
--- ~ » raco pkg remove drracket raco pkg remove: 无法删除其他包依赖项的包依赖项: drracket (需要: (racket-doc))
--- ~ » raco pkg remove racket-doc raco pkg remove: 不能删除其他包依赖的包-doc beautiful-racket data-doc br-parser-tools-doc rackunit-doc srfi-doc typed-racket-doc net-doc gui-doc 兼容性-doc beautiful-racket-lib xrepl-doc mzscheme-doc r5rs-doc quickcheck分布式位置-doc reprovide-lang drracket string-constants-doc math-doc parser-tools-doc profile-doc macro-debugger brag db-doc sugar planet-doc syntax-color-doc scribble-doc readline-doc web-server -doc trace drracket-tool-doc doc-coverage errortrace-doc net-cookies-doc beautiful-racket-demo)) --- ~ »
所以现在我不确定如何进行。我很确定我应该做一些不同的升级,但我不清楚是什么。