如何创建依赖ForwardDiff的Julia包?遇预编译错误求助
Julia 1.9.3 + Jupyter Lab 创建依赖ForwardDiff的包失败
在Julia 1.9.3版本的Jupyter Lab环境中,按官方文档步骤创建依赖ForwardDiff的包Foo始终失败,具体操作、错误信息及尝试的解决方法如下:
操作流程
- 生成空项目并激活:
]generate Foo Generating project Foo: Foo/Project.toml Foo/src/Foo.jl ]activate Foo Activating project at `~/.../Foo`
- 添加ForwardDiff依赖:
]add ForwardDiff Resolving package versions... Updating `~/.../Foo/Project.toml` [f6369f11] + ForwardDiff v0.10.36
- 编写包源码(
Foo/src/Foo.jl):
module Foo using ForwardDiff greet() = print("Hello World!") end # module Foo
错误信息
执行using Foo时触发预编译错误:
> using Foo [ Info: Precompiling Foo [b793ecfc-1afd-4979-b49f-7079086f47c4] ERROR: LoadError: ArgumentError: Package ForwardDiff [f6369f11-7733-5829-9624-2563aa707210] is required but does not seem to be installed: - Run `Pkg.instantiate()` to install all recorded dependencies.
尝试的解决方法及结果
- 执行
Pkg.instantiate(),预编译Foo失败:> using Pkg; Pkg.instantiate() Precompiling project... ✗ Foo 0 dependencies successfully precompiled in 1 seconds. 19 already precompiled. 1 dependency errored. To see a full report either run `import Pkg; Pkg.precompile()` or load the package - 执行
]resolve,无任何配置变更:]resolve No Changes to `~/Dropbox/2023/Spectral Barrier Method/julia/Foo/Project.toml` No Changes to `~/Dropbox/2023/Spectral Barrier Method/julia/Foo/Manifest.toml` - 再次执行
]instantiate无输出,重新执行using Foo仍报相同错误。 - 多次重启内核,错误信息有变化但问题未解决。
- 使用PkgTemplates创建依赖ForwardDiff的包,遇到完全相同的问题。
内容的提问来源于stack exchange,提问作者Sébastien Loisel
相关产品推荐
相关产品推荐

