提问人:Martin Brown 提问时间:11/15/2023 最后编辑:Martin Brown 更新时间:11/16/2023 访问量:48
Julia - 本地编译 Pkg 入门
Julia - getting started with local compiled Pkg
问:
这是在 Julia 1.9.3 上。我正在尝试使用高精度算术和 Remez.jl 包来测试一些想法。我有代码,编译正常。我可以用 Julia 作为一种语言做玩具,但我无法弄清楚如何使编译的“Remez”本地包对 julia 环境可见,以运行初始 runtests.jl 或我的代码。这是控制台输出,我已经查看了有关 SO 的各种建议并尝试了它们,但无济于事。我很确定这是 Julia 环境中的一个经典新手错误,但我只是 没有找到正确的常见问题解答。 请有人告诉我我在这里做错了什么吗?
$ julia Remez.jl
$ julia runtests.jl
ERROR: LoadError: ArgumentError: Package Remez not found in current path.
- Run `import Pkg; Pkg.add("Remez")` to install the Remez package.
Stacktrace:
[1] macro expansion
@ ./loading.jl:1630 [inlined]
[2] macro expansion
@ ./lock.jl:267 [inlined]
[3] require(into::Module, mod::Symbol)
@ Base ./loading.jl:1611
in expression starting at /home/martin/Downloads/runtests.jl:1
$ import Pkg; Pkg.add("Remez")
bash: syntax error near unexpected token `"Remez"'
$ Run 'import Pkg; Pkg.add("Remez")'
Command 'Run' not found, did you mean:
[snip]
$ import Pkg; Pkg.add("Remez")
bash: syntax error near unexpected token `"Remez"'
$ using Pkg; Pkg.add("Remez")
bash: syntax error near unexpected token `"Remez"'
$ import Pkg; Pkg.add(".Remez")
bash: syntax error near unexpected token `".Remez"'
$ julia -v
julia version 1.9.3
以及其他一些排列组合,都具有相同的“不行”结果。 感谢您的第一个答案,我希望它能解决问题,但不幸的是,我仍然收到完全相同的错误消息。我在下面包含相关的 Project.toms 文件。我真的不明白它是如何工作的。
name = "Remez"
uuid = "2e7db186-766a-50e7-8928-5c30181fb135"
authors = ["Simon Byrne <redacted>"]
version = "0.1.1"
[compat]
julia = "1.0"
[extras]
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
[targets]
test = ["Test"]
感谢您的任何启发。我敢肯定这是一件非常愚蠢的事情
答:
你需要。环境告诉 julia 指定依赖项的文件位于何处。julia --project=.. runtests.jl
project
Project.toml
在 shell 中,以 .这将引导您进入 Julia 终端,可通过提示识别。julia
julia>
从那里,您可以首先添加所需的 pachage: .import Pkg; Pkg.add("Remez")
这应该在默认环境中安装 Remez 软件包,并且只需要执行一次。
之后,您可以使用包提供的功能导入它并使用它。using Remez
当然,如果你不想在终端上工作,你可以使用像 VSCode 这样的开发编辑器和 Julia 插件(你仍然需要在你的电脑中安装 Julia,但你已经有了)。
评论
julia myscript.jl
julia myscript.jl
myscript.jl
using Package A , Package B, ...
下一个:R 包需要其他未调用的包
评论
julia name_of_file.jl
julia
import Pkg; Pkg.add("Remez")