在編譯caffe過程中遇到的問題:libboost_python.so: undefined reference to `PyUnicode_InternFromString'


安裝caffe時遇到這個錯誤,如下圖所示:

簡單粗暴的解決辦法,進入到libboost_python.so所在root,刪除當前的libboost_python.so,再重新生成新的鏈接

cd /usr/lib/x86_64-linux-gnu/
sudo rm libboost_python.so
sudo ln -s libboost_python-py27.so libboost_python.so

解決問題。

重新編譯,記得先clean,再編譯!

編譯成功。 

如果上述方法沒有解決,查看你cmake編譯時python版本,

 

如果cmake配置的是anaconda中的python,也會出現上述錯誤,修改環境變量,將python版本替換為自己配置的python如下:

(1)sudo gedit .bashrc

(2)注釋:

__conda_setup="$('/home/whf/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/whf/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/home/whf/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/home/whf/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup

在底部添加你的python所在位置:

PATH="/usr/lib/python3.5/site-packages:${PATH}"
export PATH
PYTHONPATH="/usr/lib/python3.5/site-packages:${PATH}"
export PYTHONPATH

重新打開終端編譯,如下圖所示,修改成功:

再進行編譯,成功!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM