linux で adb/fastboot を使えるようにした
今日は早めで帰宅は18時半過ぎ。将来的に LineageOS のビルドを行ってみたいので、まずは Linux上でadbとfastbootコマンドを使えるようにしてみました。LineageOS のビルドにはそれなりのマシンパワーがいるようなので、dynabook R731 (Core i5 2520M 2.5GHz, メモリ8GB, HDD 320GB)を準備。これにelementary OS 5.0 (64ビット版)をインストールしました。Galaxy S4 国際版に対する LineageOS のビルドページ、Build for jfltexx を参考に下記のパッケージをインストール。(adb/fastbootとは関係ないです。(^^;)bc bison build-essential ccache curl flex g++-multilib gcc-multilib git gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5-dev libsdl1.2-dev libssl-dev libwxgtk3.0-dev libxml2 libxml2-utils lzop pngcrush rsync schedtool squashfs-tools xsltproc zip zlib1g-devLineageOS 14.1をビルドしたいので、上記と、openjdk-8-jdkもインストール。と、ここまでは前フリで、以下が adb / fastboot のインストール。っちゅうても、platform-tools-latest-linux.zipをダウンロードして適当なディレクトリで unzip して環境変数PATHを設定するだけです。unzip すると、platform-toolsっちゅうディレクトリが中にあるので、mv platform-tools ~でホームディレクトリに移動させます。で、~/.profileに、if [ -d "$HOME/platform-tools" ] ; then PATH="$HOME/platform-tools:$PATH"fiを記述して、source ~/.profileを実行します。これで、adb / fastboot コマンドにパスが通りました。これで終わりかと思ってたら、adb / fastboot コマンドを使うのに、udev設定が必要でした。Linux上のAndroid開発で実機実行する際のudev/adb設定を参考にudev設定をします。(1) MTPモードにした端末をUSB接続し、lsusbを実行。(2) ベンダIDを取得 (Samsungは04e8)(3) /etc/udev/rules.d/51-android.rulesに、SUBSYSTEM=="usb", ATTRS{idVendor}=="04e8", MODE="0666", GROUP="plugdev"を記述。04e8はベンダIDなので適宜変更してください。(4) udevルールの再読込をsudo udevadm control --reload-rulesで実行。(5) 下記でadbサーバを再起動。adb kill-serveradb start-server以上で、adb / fastboot コマンドがエラーなく使えるようになります。adb devicesで試してみるとよいでしょう。っちゅうことで、Linux上でゴニョゴニョする準備が少しできました。--- 19:35 ---