JR6PUE HOME PAGE

UbuntuMATE22.04LTSにJTDX159 CQRLOG TQSLを新規インストール


Ubuntu MATE 22.04LTSがRaspiにも対応したので、インストールしてFT8の環境を構築してみました。
以前も書きましたが、Ubuntu MATEは、メモリーを多く消費しますのでRaspi4の2GB以上を使用することを
推奨します。
なお、Raspi3B+を使用する場合は、メモリーが1GBしかないのでSWAPメモリ-を使用するように設定してください。


1.Ubuntumate22.04LTSをインストール
  UbuntuMATE公式サイトからRaspi用の64Bit版OSをダウンロードします。
  ダウンロードしたらubuntu-mate-22.04-desktop-arm64+raspi.img.xzをダブルクリックして
  Raspberry Pi Imagerが起動したら、書き込むストレージSDカードを選択し[書き込む]ボタンを押します。
  インストールは、ここのサイトを参考にしてください。
  
  環境によっては、Applying changesのところでアプリケーションがインストールされず
  止まったままになります。


  最初は、インストールに時間がかかるなくらい思っていましたが何も動きが無くて
  cancelしました。
  これにより再起動すれば、とりあえずUbuntuMateが起動します。
  そこで、ターミナルを立ち上げてコマンドで下記を実行します。

  これにより再起動すれば、とりあえずUbuntuMateが起動します。
  そこで、メニュー → システムツール → MATE端末を立ち上げて
  下記コマンドを実行します。

 sudo apt update
 sudo apt upgrade

 すると、upgradeでlockがかかっているとメッセージが出続けますのでctrl + zで止めます。

Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 18400 (unattended-upgr)      
Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 18400 (unattended-upgr)      
 ここで、プロセス番号を把握し、このプロセスを強制終了します。
 この場合は、18400ですがシステム動作環境によって番号は、変わります。

 sudo kill -9 18400  #18400は、状況で変わる番号

 sudo apt upgrade   #再度新しいソフトをインストールする。

 これで、アプリケーションが最新版に入れ替わります。

2.UbuntuMATEの基本設定
(1) SSHとnet-toolを使えるようにします。
    sudo apt install net-tools
     sudo apt install openssh-server

    ここまでしたら、外部からSSHが利用できます。
    ifconfigコマンドでラズパイに割り当てられてIPアドレスを確認して
    SSHで作業すると楽かも。

   SSHサービスを有効にし(systemdから)、起動するたびにSSHサーバを起動させます。

   $ sudo systemctl enable ssh.service
   $ sudo systemctl start ssh.service
   $ sudo dpkg-reconfigure openssh-server

(2)ディレクトリー表記をオリジナル表記(英語)へ戻します。
  日本語表記でのディレクトリーでも良いのですが、英語表記のほうが何かと便利です

  MATEは、日本語環境に設定するとディレクトリーも日本語表記になります。
  これは、SSH環境では設定できませんのでX-window画面からターミナルを開いて対応してください。

  LANG=C xdg-user-dirs-gtk-update

  ここまできたら、念のため再起動

3.CQRLOG  Hamlib  JTDX  TQSLをインストール

(1)コンパイルに必要なソフトをインストール

sudo apt-get install build-essential cmake automake libtool gfortran pkg-config \
asciidoc asciidoctor qttools5-dev qttools5-dev-tools qtmultimedia5-dev \
libqt5serialport5-dev libudev-dev fftw3 libfftw3-dev cmake git libhamlib-dev libhamlib-utils \
portaudio19-dev libqt5multimedia5-plugins coderay dialog libsamplerate0-dev python3-pip python3-tk \
python3-dev python3-numpy python3-setuptools python3-dev subversion texinfo libfreetype6-dev \
libgtk-3-dev libgtk2.0-dev libjpeg-dev liblcms2-dev libtiff5-dev libwebp-dev tcl8.6-dev tk8.6-dev \
libusb-dev libusb-1.0-0-dev .imagetk

(2)Hamlib(4.6)最新版をインストール

JTDXのバージョンアップが止まっており、JTDXの置いてある場所からインストールすると
Hamlib4.5しかインストールされません。このため、最近発売されたIC-705やFT-710が
CAT制御対象から外れています。ただ、IC−7300やFTDX−10でやると使えないことは
無いのですが、気分的に面白くありません。
このため、Hamlibのおひざ元からソースファイルをgetしてcompileしました。

cd ~
mkdir ~/hamlib-prefix
cd ~/hamlib-prefix
git clone https://github.com/Hamlib/Hamlib src
cd src
./bootstrap
mkdir ../build
cd ../build
../src/configure --prefix=$HOME/hamlib-prefix \
--disable-shared --enable-static \
--without-cxx-binding --disable-winradio \
CFLAGS="-g -O2 -fdata-sections -ffunction-sections" \
LDFLAGS="-Wl,--gc-sections"

make
make install-strip

(3)JTDX159をインストール
cd ~
sudo apt-get install libboost-all-dev -y
sudo apt install libqt5websockets5-dev
mkdir -p ~/jtdx159/build
cd ~/jtdx159
git clone git://git.code.sf.net/p/jtdx/code src
cd ~/jtdx159/build
cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix \
-D CMAKE_INSTALL_PREFIX=~/jtdx159 ../src
cmake --build .
cmake --build . --target install

コマンドラインからの起動
/home/dhiro/jtdx159/bin/jtdx

ここで大きく困ったことがおきました。
JTDXは、各種ボタンの説明がポップアップ画面で出るのですが
黄色い枠に白文字で出て読めない。設定にある通知・色分けの設定とかを見るのですが
どうもここでの設定ではない。ダークモードにすると読めるようになりますが、
全体的に好みでない色合いになります。

悩みに悩みましたが、なんとか解決方法を発見。

UbuntuMATE側の「外観の設定」を触ることで文字色を黒にすることができました。
今回、UbuntuMATEの見直しの目玉にもなっているようですが、私としては
困った事です。

UbuntuMATE20.04 LTSの時は、特に問題なかったので、本来であればJTDX側でも
背景色や文字の色を変更できるように対応していただけるのでしょうが、
今の世界情勢では、無理ですので、しばらくは下記対応で乗り切ります。(^^;

これでは、文字が読めない。


そこで、UbuntuMATEの外観の設定を触ります。


いちど、Yaru-olibveなどのdarkモードを選択して、再度カスタムを選択します。
さらに、もう一度、Yaru-olibveなどを選択して再度カスタムを選択します。


すると、ポップアップ画面の文字が黒く表示されて読めるようになります。

ただ、JTDXを再起動すると元に戻るようなので再度同じことをする必要があります。

(4)ttyUSBが使えるようにす
sudo adduser USER dialout

USER名は、自分です。私の場合は、dhiroとなりますので
sudo adduser dhiro dialout
これで、dialoutにdhiroも登録されますのでttyUSB*が使えます。
これをしないとCAT制御で無線機のPTTが動作しません。
詳細は、私のホームページのここの中間あたりに詳細を記載しています。

(5)CQRLOG 2.6.0をインストール

  CQRLOGもバージョンが上がっていますので最新版をインストールしました。


cd ~
sudo apt-get install lazarus*2.0 libssl-dev git build-essential \
lazarus-ide libmariadb-dev
sudo apt install apt-transport-https
sudo apt install curl
sudo apt install mariadb-server

cd Downloads
git clone https://github.com/ok2cqr/cqrlog.git
cd cqrlog
make
sudo make install
sudo ln -s /usr/lib/aarch64-linux-gnu/libmariadbclient.so /usr/lib/libmysqlclient.so

注意:なお、X86ベースCPU(パソコンに)でインストールした場合は、リンクのアドレスが変わっています。
sudo ln -s /usr/lib/x86_64-linux-gnu/libmariadbclient.so /usr/lib/libmysqlclient.so
x86_64-linux-gnuにディレクトリー名が変わっています。他はすべてRaspiと同じ内容で
インストールできました。

今回は、データーベースが立ち上がらないで困ったということに以前の経験を踏まえて
対応したのですんなり起動できました。

なお、CQRLOGは、メニュー ⇒ インターネットに起動アイコンが作成されます。

(6)TQSL 2.6.5をINSTALL
 @TQSLの動作に必要な関係ファイルをインストールします。

sudo apt install lmdb-utils liblmdb-dev
sudo apt install libdb-dev libcurl4-openssl-dev
sudo apt install libwxbase3.0-0v5 libwxgtk3.0-gtk3-0v5 expat

wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.2.1/wxWidgets-3.2.2.1.tar.bz2

tar jxf wxWidgets-3.2.2.1.tar.bz2
cd wxWidgets-3.2.2.1

./configure --with-gtk
make
#1時間20分compile
sudo make install
sudo cp wx-config /usr/local/bin
sudo chmod 755 /usr/local/bin/wx-config

ATQSLをインストール
cd ~
cd Downloads
wget https://www.arrl.org/tqsl/tqsl-2.6.5.tar.gz
tar zxvf tqsl-2.6.5.tar.gz
cd tqsl-2.6.5
cmake .
make
sudo make install
次のコマンドで設定を反映させます。
sudo ldconfig

コマンドラインからの起動は、下記コマンドです。
/usr/local/bin/tqsl

あとは、JTDX,CQRLOG,TQSLの設定を行ってください。
また、ここを参考にJTDXとTQSLの起動アイコンをデスクトツプに作成しておくと便利ですが
なお、起動アイコン作成は設定時のディレクトリー等についてUbuntuMATEの環境に変更して
くださいます。

JTDXは、起動するまでに少し時間がかかるのでコマンドラインで起動して起動の様子を確認して
行くのもありです。

OSがバージョンアップされると以前の方法と全く同じにならないのが困ったところであり
面白いところかもしれません。  (2023.06.06)