Julia:DiffEqSensitivity 包的预编译(precompiling)失败

简介: 我更新了某个包,然后在预编译的时候,出现了 `Failed to precompile` 的报错。在 `using DiffEqSensitivity` 的时候,出现了 `ERROR: UndefVarError: SciMLBase not defined.` 的报错,然后无法完成 precompile。

我更新了某个包,然后在预编译的时候,出现了 Failed to precompile 的报错

using DiffEqSensitivity 的时候,出现了 ERROR: UndefVarError: SciMLBase not defined. 的报错,然后无法完成 precompile。

查看报错:

ERROR: LoadError: LoadError: UndefVarError: SciMLBase not defined
Stacktrace:
 [1] top-level scope at /home/xu/.julia/packages/DiffEqNoiseProcess/9NzQP/src/solve.jl:1
 [2] include(::Function, ::Module, ::String) at ./Base.jl:380
 [3] include at ./Base.jl:368 [inlined]
 [4] include(::String) at /home/xu/.julia/packages/DiffEqNoiseProcess/9NzQP/src/DiffEqNoiseProcess.jl:1
 [5] top-level scope at /home/xu/.julia/packages/DiffEqNoiseProcess/9NzQP/src/DiffEqNoiseProcess.jl:23
 [6] include(::Function, ::Module, ::String) at ./Base.jl:380
 [7] include(::Module, ::String) at ./Base.jl:368
 [8] top-level scope at none:2
 [9] eval at ./boot.jl:331 [inlined]
 [10] eval(::Expr) at ./client.jl:467
 [11] top-level scope at ./none:3
in expression starting at /home/strongnine/.julia/packages/DiffEqNoiseProcess/9NzQP/src/solve.jl:1
in expression starting at /home/strongnine/.julia/packages/DiffEqNoiseProcess/9NzQP/src/DiffEqNoiseProcess.jl:23

最后的两句可以看到,是在 .julia/packages/DiffEqNoiseProcess/9NzQP/src/solve.jl 这个文件的第一行出现了问题,而这个报错 UndefVarError: SciMLBase not defined 是因为在没导入包的情况下就使用了这个变量,所以一个可以解决的办法,就是进去这个文件,加上 using SciMLBase.

因为这个文件是系统的文件,所以我们进入 .julia/packages/DiffEqNoiseProcess/9NzQP/src/,然后右键在此打开终端,输入 sudo vim solve.jl,在文件的前面加上 using SciMLBase,然后按 esc 退出编辑模式,然后按 :wq! 强制保存退出。

再次 using DiffEqSensitivity 就能够预编译成功了。

出现这个问题的原因是因为在预编译的时候 DiffEqNoiseProcess 这个包出现报错,导致的。

一般碰到这种类似的情况,有几种尝试的方法:

  1. 首先可以尝试 ]build,或者 ]build SciMLBase,看看能不能完成
  2. 还可以把预编译失败的包先删除(remove)了:例如 ]remove DiffEqSensitivity,然后再重新安装(add):]add DiffEqSensitivity
  3. 如果还是不行,可以使用最终的办法,把之前预编译完成的文件都删除,然后再全部重新预编译。在 Ubuntu 上文件保存的路径为:~/.julia/compiled/ 里面会有对应 Julia 版本的一个文件夹,里面的预编译文件先备份,然后删除,再 using Package 看看,时间会比较长,但是应该能够解决。
目录
相关文章
|
监控 C++
学习也需要管理
  管理是个时髦的词,沾着管理,有种当家做主甚至当官的感觉,很是过瘾。有不少声称对计算机不感兴趣的大学生,问及心仪的专业,居然多是管理。然而,管理为何物?管理其实无处不在,从生活到学习,管理中要求的计划、组织、指挥、协调、控制,全都涉及。再看最终的结局,还真取决于管理的水平。 缺乏管理的学习   对学习缺乏管理,首先在对大学的目标和意义方面是缺失的。进入了大学,却久久不知道为什么要进大学,走
1180 0
|
5天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
15天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
9天前
|
安全 Java Android开发
深度解析 Android 崩溃捕获原理及从崩溃到归因的闭环实践
崩溃堆栈全是 a.b.c?Native 错误查不到行号?本文详解 Android 崩溃采集全链路原理,教你如何把“天书”变“说明书”。RUM SDK 已支持一键接入。
588 212
|
4天前
|
编解码 Linux 数据安全/隐私保护
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
教程分享免费视频压缩软件,免费视频压缩,视频压缩免费,附压缩方法及学习教程
233 138
|
存储 人工智能 监控
从代码生成到自主决策:打造一个Coding驱动的“自我编程”Agent
本文介绍了一种基于LLM的“自我编程”Agent系统,通过代码驱动实现复杂逻辑。该Agent以Python为执行引擎,结合Py4j实现Java与Python交互,支持多工具调用、记忆分层与上下文工程,具备感知、认知、表达、自我评估等能力模块,目标是打造可进化的“1.5线”智能助手。
827 60
|
7天前
|
人工智能 移动开发 自然语言处理
2025最新HTML静态网页制作工具推荐:10款免费在线生成器小白也能5分钟上手
晓猛团队精选2025年10款真正免费、无需编程的在线HTML建站工具,涵盖AI生成、拖拽编辑、设计稿转代码等多种类型,均支持浏览器直接使用、快速出图与文件导出,特别适合零基础用户快速搭建个人网站、落地页或企业官网。
1182 157