1. 程式人生 > >Caffe-SSD錯誤:ImportError: /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0: undefined symbol: g_log_structur

Caffe-SSD錯誤:ImportError: /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0: undefined symbol: g_log_structur

Caffe-SSD編譯成功後,在import caffe時候出現以下錯誤:

>>> import caffe
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/dell/Programming/caffe/python/caffe/__init__.py", line 1, in <module>
    from .pycaffe import Net, SGDSolver, NesterovSolver, AdaGradSolver,
RMSPropSolver, AdaDeltaSolver, AdamSolver File "/home/dell/Programming/caffe/python/caffe/pycaffe.py", line 13, in <module> from ._caffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, \ ImportError: /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0: undefined symbol: g_log_structured_standard

錯誤的原因:

/usr/lib/x86_64-linux-gnu/libatk-1.0.so.0 被Anaconda中新版本的libglib編譯。

  • Ubuntu18.04版本中是:/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.1)
  • Anaconda :~/anaconda3/lib/libglib-2.0.so.0.5306.0 in this moment

解決方法:

  • 安裝最新版的glib庫.
conda install -c anaconda glib
  • 在終端輸入:
grep -l g_log_structured_standard /
usr/lib/x86_64-linux-gnu/*glib*.so* grep -l g_log_structured_standard ~/anaconda3/lib/*glib*so*
  • 連結
mv ~/anaconda3/lib/libglib-2.0.so.0 ~/anaconda3/lib/libglib-2.0.so.0.backup

問題解決!