1. 程式人生 > >smart phone flash tool ubuntu 18.04配置

smart phone flash tool ubuntu 18.04配置

1,下載https://spflashtool.com/download/SP_Flash_Tool_exe_Linux_64Bit_v5.1520.00.100.zip,連結不可用就到主頁找。要不是下原始碼自編譯大約又加好多要下載的東西。注意不要下到32位版本的,會報一些 segment錯誤,會出介面,但程式不正常。

2,unzip解壓。unzip SP_Flash_Tool_exe_Linux_64Bit_v5.1520.00.100.zip

3,18.04上可能報到不到libpng12的錯誤。下面的前三個命令安裝這個。最後一下就是刪去它的命令。這個是QT用的的一個圖形開發的庫。用高版本低不了低版本。而ubuntu18.04的apt已不提供這個的下載。只好找一個用了。

wget -q -O /tmp/libpng12.deb http://mirrors.kernel.org/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1_amd64.deb 
dpkg -i /tmp/libpng12.deb 
rm /tmp/libpng12.deb
sudo dpkg -r libpng12-0

4,安裝libusb-dev這個包.這個包下了以後,發現USB串列埠後,才能下載應用到手機。

sudo apt-get install libusb-dev

5,/etc/udev/rules.d下新建兩個檔案:51-android.rules 和51-MTKinc.rules 這個很重要,是Linux的許可權管理要用的。51-android.rules,因為用過adb 憶存在。後面加入。

#MTK preload tcl p500m
SUBSYSTEM=="usb", ACTION=="add",SYSFS{idVendor}=="0e8d",SYSFS{idProduct}="2000",MODE="0777" SUBSYSTEM=="usb", ACTION=="add",ATTRS{idVendor}=="0e8d",ATTRS{idProduct}="2000",SYMLINK+="android_adb"

51-MTKinc.rules 為新鍵,寫在一個裡也可,但以後要下的手機多了不方便。我炒別人做法,就這樣做了。

#MTK preload tcl p500m
SUBSYSTEM=="usb",SYSFS{idVendor}=="0e8d",SYSFS{idProduct}="2000",MODE="0777" SUBSYSTEM=="usb", ACTION=="add",ATTRS{idVendor}=="0e8d",ATTRS{idProduct}="2000",SYMLINK+="android_adb" KERNEL=="ttyACM*",MODE="0777"

這裡的SYSFS{idVendor}=="0e8d"對MTK基本就是這個,SYSFS{idProduct}="2000"對不同處理器不一樣,lsusb看一下。注意手機啟動後,與線刷模式下的,這兩個東西是不一樣的。用的是線刷下的值。

別人的做法中,要給這兩個檔案加許可權,這個不要求太安全的話,沒必要,sudo chmod a+rx /etc/udev/rules.d/51-android.rules

6,重啟許可權的處理服務,這個必須。當然也要重啟sp_flash_tools.

sudo /etc/init.d/udev restart,

7,對做做測試的手機tcl-p500m,進入線刷是帶關機,電池接入USB線就可。有些在接入USB時要按下音量+ — ,可同時。

8,linux下的USB轉串列埠驅動是統一的,不需要安裝。這個與win7不一樣,win7要安裝一下,要不不識別。

做好準備工作,改preloader,做加電就啟動的。再就是camera相關的原始碼,這部分的呼叫與linux在MTK下與LINUX不一樣。好似因為不開源的原因,寫的相當複雜。

 

注意:

如果./flash_tool.sh在下載時卡住不動,請試一下sudo ./flash_tool.sh linux的許可權問題不報錯。不提示。就是不動。

遇到效驗問題,可改checksum.ini中的CHECKSUM_SWITCH=0。或者用生成工具生成checksum。這個是sp-flash-tool的功能。與下下載的最終內容無關。