轉(zhuǎn)載自:http://blog.csdn.net/hhwahzl/article/details/46520137
一.編譯過程中出現(xiàn)如下錯誤:
lzo/lzo1x.h: No such file or directory
uuid/uuid.h: No such file or directory
這個是因為沒安裝相應(yīng)的軟件開發(fā)包導(dǎo)致的构回,ubuntu系統(tǒng)下可以分別使用命令:
sudo apt-get install liblzo2-dev
sudo apt-get install uuid-dev
在線安裝,安裝成功后,重新編譯即可
二.在編譯android4.3源碼時纤掸,一直執(zhí)行到最后出現(xiàn)如下錯誤:
/usr/bin/ld: cannot find -llzo2
/usr/bin/ld: cannot find -luuid
提示這種找不到-lxxx的脐供,都表示在編譯過程中g(shù)cc找不到鏈接的動態(tài)庫(so: shared object)。
解決方法如下:
1)首先需要確保系統(tǒng)正確安裝了對應(yīng)的庫(庫名為去掉-l借跪,加上lib就可以了政己,比如-luuid其實是庫libuuid)。以下以uuid為例垦梆。
在Terminal下運行:
#locate libuuid
系統(tǒng)會打印一堆帶有l(wèi)ibuuid的文件及路徑匹颤。
其中最上面顯示.../libuuid.so.1xxxx這些的表明仅孩,庫已經(jīng)成功安裝托猩。如果沒有,則不會顯示出來辽慕,需要安裝相對應(yīng)的庫京腥。
2)創(chuàng)建庫鏈接文件
注意到/lib/xxx/libuuid.so.1, /lib/xxx/libuuid.so.1.3.0等好多,一般可以隨便選擇溅蛉。我選擇的是/lib/x86_64-linux-gnu/libuuid.so.1公浪,并為其創(chuàng)建庫鏈接文件到相應(yīng)路徑,在terminal輸入命令如下:
#sudo ln -sf /lib/x86_64-linux-gnu/libuuid.so.1 /usr/lib/libuuid.so
注意:-sf必須小寫
3)鏈接創(chuàng)建成功后船侧,可以看到在/usr/lib目錄下生成libuuid.so欠气。
再次編譯,不會出現(xiàn)上述錯誤镜撩。
以同樣的方法創(chuàng)建了liblzo2.so,代碼編譯成功预柒!
三.編譯過程出現(xiàn)如下錯誤:
make: *** [out/host/linux-x86/obj/EXECUTABLES/mkfs.ubifs_intermediates/mkfs.ubifs] Error 1
可以參考以下步驟嘗試:
- apt-get install liblzo2-2 --- 無效
- apt-get install liblzo2-dev:i386 --無效
- apt-get install liblzo-dev:i386 -- 無效
- apt-get install liblzo2-2:i386
- 參考 (http://www.tuicool.com/articles/V3IV73)
sudo ln -s /usr/lib/i386-linux-gnu/liblzo2.so.2 /usr/lib/liblzo2.so
set LD_LIBRAY_PATH=/usr/lib/
無效 - sudo apt-get remove liblzo2-dev liblzo2-2 -- 無效
- sudo apt-get install g++-4.4-multilib
成功!