错误解决:Process finished with exit code 132 (interrupted by signal 4: SIGILL)

出错环境

  • M1 芯片,pycharm, macos 系统

问题分析

  • import 出错
  • 要么包没装对,要么名字有冲突

问题解决

  • github 上有针对 tensorflow 包没安装对而引发的这个错误,引用放在这里

  • 我这边的原因我逐行排查代码,发现是这个步骤出的问题:
    在这里插入图片描述

  • 分析了一下原因:

    • 我复现别人的代码,别人的环境中有一个 onmt 文件夹了,但我还傻乎乎装了一个这个 onmt 的包
    • 卸掉这个 onmt 包,发现能继续往下运行了
  • 但是当我把 import torch 取消注释后,发现有报了这个错误

    • 然后我检查了 torch 的版本,并且将 torch1.3 -> 1.10 错误再次解决
  • 后面也就没再有这个错误了。

总结

  • 几乎就是 import 部分出的问题

    • 检查你的 pip list 环境列表中是否有与自己创建的 package 或者 directory 重名的,有的话要么把本地自己写的文件夹改个名,要么 pip list 中重名的 package
    • 检查使用的 package 的版本问题
  • 这篇文章不能帮你解决所有的问题,但是可以给你提供一个可能的解决思路,不至于让你面对这个错误摸不到头脑。希望能帮到你。

猜你喜欢

转载自blog.csdn.net/qq_42902997/article/details/128032138