yocto-4.9.88 python出錯解決

編譯nxp的4.9.88版本的Yocto工程時,出了一個錯誤,耽擱了我兩天,試了各種原因,解決方式記錄於下
ERROR: pango-1.40.6-r0 do_package: Error executing a python function in exec_python_func() autogenerated:
記錄了以上第一條錯誤
看樣子是由於python,導致編譯qtbase-5.9.4+gitAUTOINC+0d9208cecb-r0出錯
看到yocto編譯手冊
在這裏插入圖片描述要求的python最低版本是3.4
在ubuntu下查看了一下
python --version
版本是2.7
ls /usr/bin/python*
在這裏插入圖片描述
發現自己的python版本有2.7及3.5
系統默認指定的是2.7
在這裏插入圖片描述
那麼修改默認指定
echo alias python=python3 >> /home/cc/.bashrc
source /home/cc/.bashrc //cc是我的ubuntu用戶名
再python --version看一下
發現已經切換成3.5了
在這裏插入圖片描述
然後繼續yocto的編譯
python切換版本參考的是別人的一篇博客:https://blog.csdn.net/wangguchao/article/details/82151372

而事實是按照上述這種方式,繼續編譯的結果仍然是出錯
在這裏插入圖片描述
在/usr/bin目錄下,python的軟鏈接指向的仍然是python2.7

sudo rm python
sudo ln -s python3.5 python
ls python -l
在這裏插入圖片描述
現在軟鏈接是改過來了,出錯怕了,重啓ubuntu,然後接着編譯yocto試試

在配置repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-rocko -m imx-4.9.88-2.0.0_ga.xml
時出錯
在這裏插入圖片描述看來這裏就和python3.5不兼容了

回故一下repo的得來,正規途徑應該是下面這樣
sudo curl https://storage.googleapis.com/git-repo-downloads/repo > /home/cc/yocto/bin/repo
要從google獲取
由於上不了谷歌,我的repo是借鑑網上別人的方法
sudo curl http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo > /home/cc/yocto/bin/repo
可能是由於這個repo是2011/9月份的,太老了
後來發現
sudo curl https://storage.googleapis.com/git-repo-downloads/repo > /home/cc/yocto/bin/repo
其實這句命令就可以執行並下載到repo,簡直無語
爲什麼會走這麼多彎路,百度裏面看到不能訪問谷歌,就以爲這句命令是執行不了的;

折騰了這麼久,那麼來試試效果吧
新的問題又來了
在這裏插入圖片描述居然說python3不支持

又來看手冊了
https://www.yoctoproject.org/docs/current/ref-manual/ref-manual.html#required-git-tar-and-python-versions
這個手冊是我這幾天一直參考的在線手冊
在這裏插入圖片描述這份手冊是對於2.6的yocto發行版實用的

裏面說的ubuntu環境是16.04,python版本是3.4以上
我還專門把ubuntu14升級成ubuntu16來編譯yocto
再看i.MX_Yocto_Project_User’s_Guide_linux.pdf
在這裏插入圖片描述
這裏很清晰的寫到我要編譯的4.9.88是基於yocto project2.4的
兩份手冊沒有對應上,所以問題百出
那接下來要乾的事情就是下載yocto2.4發行版的手冊,然後重新配置ubuntu環境,再來一次痛苦的實驗了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章