You need to enable JavaScript to run this app. Spyder运行financepy代码报LLVM ERROR: __powidf2错误如何解决
优惠活动
大模型
产品
解决方案
定价
更多

Spyder运行financepy代码报LLVM ERROR: __powidf2错误如何解决

Spyder运行financepy相关代码触发LLVM报错的修复方案

在Spyder中运行代码时,启动IPython阶段触发报错:LLVM ERROR: Symbol not found: __powidf2

运行环境信息

  • Spyder版本:4.2.1 None
  • Python版本:3.8.3 64位
  • Qt版本:5.12.10
  • PyQt5版本:5.12.3
  • 操作系统:Windows 10

测试代码

import numpy as np
import matplotlib.pyplot as plt

from financepy.finutils import *
from financepy.products.bonds.FinBond import *

#Define the Bond
issueDate = FinDate(15, 5, 2020)
maturityDate = FinDate(15, 5, 2030)
coupon = 0.050 # This means 5%
freqType = FinFrequencyTypes.ANNUAL
accrualType = FinDayCountTypes.ACT_ACT_ICMA
faceAmount = ONE_MILLION
bond = FinBond(issueDate, maturityDate, coupon, freqType, accrualType, faceAmount)
print(bond)

问题背景

该代码在VS Code环境下可正常运行,预期输出如下:

OBJECT TYPE: FinBond
ISSUE DATE: 15-MAY-2020
MATURITY DATE: 15-MAY-2030
COUPON: 0.05
FREQUENCY: FinFrequencyTypes.ANNUAL
ACCRUAL TYPE: FinDayCountTypes.ACT_ACT_ICMA
FACE AMOUNT: 1000000

修复方案

该报错本质是Spyder绑定的LLVM运行库版本和financepy依赖的JIT编译组件版本不匹配导致的符号缺失,可按以下步骤依次排查修复:

  1. 确认Spyder使用的Python解释器和VS Code使用的是同一个,避免多环境冲突:打开Spyder的「工具」-「偏好设置」-「Python解释器」,核对路径和VS Code中激活的环境路径一致,不一致的话手动切换到VS Code对应的环境后重启Spyder测试。
  2. 升级Spyder对应环境内的numba和llvmlite版本:在对应环境的命令行执行pip install --upgrade numba llvmlite,升级完成后重启Spyder。
  3. 如果上述操作无效,降级financepy到适配当前环境的稳定版本:执行pip install financepy==0.260,该版本对旧版本LLVM兼容性更好。
  4. 若还是报错,更新Spyder到最新稳定版:当前使用的4.2.1版本较老,自带的IPython和依赖库版本存在兼容问题,升级到Spyder5.x版本即可解决大部分底层依赖冲突。

内容的提问来源于stack exchange,提问作者chengjon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 08:45:03