1. 程式人生 > >undefined symbol: _Py_ZeroStruct錯誤一種可能的原因

undefined symbol: _Py_ZeroStruct錯誤一種可能的原因

Traceback (most recent call last):
  File "train_net.py", line 28, in <module>
    from roi_data_layer.roidb import combined_roidb
  File "/home/zuosi/pytorch-lighthead/lib/roi_data_layer/roidb.py", line 9, in <module>
    from datasets.factory import get_imdb
  File "/home/zuosi/pytorch-lighthead/lib/datasets/factory.py", line 14, in <module>
    from datasets.pascal_voc import pascal_voc
  File "/home/zuosi/pytorch-lighthead/lib/datasets/pascal_voc.py", line 23, in <module>
    from .imdb import imdb
  File "/home/zuosi/pytorch-lighthead/lib/datasets/imdb.py", line 14, in <module>
    from model.utils.cython_bbox import bbox_overlaps
ImportError: /home/zuosi/pytorch-lighthead/lib/model/utils/cython_bbox.so: undefined symbol: _Py_ZeroStruct

網路上也有大量關於訪錯誤的解決辦法,但都沒有解決我的問題,最後發現是cython版本的問題,將版本降級後解決。

【我的環境】

Ubutun16.04

CUDA9.0

Python 3.6.5

  • cython 0.28.2

可見我Python中安裝的cython版本為0.28.2,將它降級為0.26.0不再出現訪錯誤。這只是訪錯誤出現的一種情形,僅作參考。