安裝步驟參考如下鏈接
https://www.jianshu.com/p/e9ce2a60df83
1.在GitHub上拉取代碼時發生錯誤:RPC failed; curl 18 transfer closed with outstanding read data remaining
解決辦法:增大緩存去區的大小,執行下面的指令,最后的大小根據實際情況變化
git config --global http.postBuffer 1048576000
2.執行:./bootstrap && ./configure --prefix=`pwd` && make && make install 的過程中報錯:
could not find GNU libtool >= 1.5.26
發現報錯是缺少libtool,但是在執行:sudo apt-get install libtool 后發現原因是libtool版本過高。
自動安裝未發現1.5.26版本的,只能手動安裝:
刪除已安裝版本sudo apt-get remove libtool
至ftp://ftp.gnu.org/gnu/libtool/下載libtool-1.5.26版,並解壓libtool-1.5.26目錄
在libtool-1.5.26目錄下依次執行
./configure
b)make
c)sudo make install
libtool完成安裝
3.zconf.hash.c:163:1: error: conflicting types for ‘kconf_id_lookup’ kconf_id_lookup (register const char *str, register size_t len)
發現是有函數的定義出問題了,修改 kconfig/zconf.hash.c 的 163 行的 size_t 類型為 unsigned int 再重新配置編譯即可
修改前:
修改后:
4.執行./ct-ng build 過程中可能遇到的問題
這兩個報錯應該是這個源代碼包自動下載失敗了,所以需要我們手動將其添加到 .build/tarballs 目錄下,可以使用
cat build.log 觀察輸出的結果,在里面查看需要的源碼包的版本。