linux安裝firmware-mod-kit


基本上就是執行以下四步安裝firmware-mod-kit

git clone https://github.com/mirror/firmware-mod-kit.git
sudo apt-get install build-essential zlib1g-dev libz1zma-dev python-magic
cd firmware-mod-kit/src
./configure && make 

第二行安裝報錯

在/etc/apt/sources.list中添加源 deb http://archive.ubuntu.com/ubuntu/ trusty main universe restricted multiverse
執行sudo apt-get install再次報錯,缺少公鑰驗證。

執行

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32

最后的公鑰當然要換成你電腦上報的。
然后sudo apt-get update成功。
然后還是報錯E: 無法定位軟件包 libz1zma-dev
后來找到一篇博客ubuntu18.04安裝build-essential所引發的一系列問題的解決,知道了一個強大的網站Ubuntu Packages Search,可以直接搜索想安裝的包,復制下載地址,用wget http://cz.archive.ubuntu.com/ubuntu/pool/main/x/xz-utils/liblzma-dev_5.2.4-1_amd64.deb下載就行了,強!
然后又出現了新的問題

先用uname -m查看系統信息,然后在./configure后加上--host=x86_64,這個x86_64是我的系統信息。
然后新的報錯

看來liblzma我僅是下載了,還沒有安裝。回到下載了liblzma-dev_5.2.4-1_amd64.deb的路徑,用dpkg -i liblzma-dev_5.2.4-1_amd64.deb指令安裝之。
然后新的報錯

那么執行sudo apt-get install -f,然后再去執行./configure --host=x86_64 && make(在firmware-mod-kit/src路徑下)
新的報錯

查了一下,是major和minor缺少頭文件,solaris中有這個頭文件,而在linux中是代替之的頭文件<sys/sysmacros.h>,打開報錯的文件uncramfs.c,添加上頭文件#include<sys/sysmacros.h>

再次make,發現這個文件編譯已經沒問題了,下面的文件又會報同樣的錯,那么依次添加上這個頭文件。
改了好多文件...終於出現新的報錯undefined reference to `makedev',其實也是需要加上這個頭文件,哈哈。
終於出現了全新的問題

查了一下,虛擬機共享windows文件夾,在共享的文件夾內,不可以創建到linux本地目錄的鏈接。這我是沒想到,於是用cp firmware-mod-kit/ ~/firmware-mod-kit/ -r 把這個文件夾復制到虛擬機內部一份,去那里再make。
然而我用了mv和cp,最后搞得文件缺失亂七八糟,於是我決定從頭再來,在虛擬機本地重新git clone,加頭文件......


免責聲明!

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



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