個人情報保護方針 お支払いについて お問い合わせ

VMwareへのUbuntu20.04 (64bit)のインストール


Linuxのディストリビューションとして現在最も人気のあるUbunthも開発環境として有用です。RaspberryPiOS Desktopもインストールしてみましたが、こちらのほうが動作が安定している他、Ubunthに関するネット上の情報も豊富です。ここでは最新版ではなく、RaspberryPiと親和性が高く、Qt5等の開発環境も安定して動作している。Ubunth20.04をWindows上の仮想PCにインストールする手順を説明します。<

1) ISO イメージのダウンロード

国内では理化学研究所のミラーサイトから、UbuntuのISOイメージをダウンロードできます。必要なのは64-bit PC(AMD64) desktop imageです。ubuntu-20.04.6-desktop-amd64.isoをダウンロードしてください。

64-bit PC (AMD64) desktop image
https://ftp.riken.jp/Linux/ubuntu-releases/20.04/ubuntu-20.04.6-desktop-amd64.iso



2) 仮想PCへのインストール

仮想PCを作成するのにVMWare Playerを使用します。ほかの仮想PCソフトウェアでも基本的に同じはずです。



新しい仮想マシンウイザードで1)でダウンロードしたubuntu-20.04.6-desktop-amd64.isoを指定します。


Ubuntuのインストールは簡易インストールでできます。



ゲストOS(Ubuntu)のユーザー名とパスワードを入力します



仮想PCの名前と保存場所を指定します。



ストレージの容量はRaspberyPi4B/ComputeModule4最大と同じ32GBとします。



ハードウェアは4コア、メモリ4GB、USB3.1を指定します。Smart-USB Sigmaシリーズと最大パフォーマンスで接続するにはUSB3.xが必要です。





ハードウェアの設定が完了したらインストールに進みます。




インストールが終了し、再起動するとログイン画面になりますので、インストール時に指定したユーザー名でログインします。その後各種設定を確認するとUbuntuのインストールは完了です。









RaspberryPiOSの時には日本語でインストールされましたが、Ubuntuは英語モードでインストールされます。日本語化の設定は追って行います。opem-vm-tools-desktopは自動でインストールされるのでインストールの必要がありません。

Smart-USBシリーズをUSBケーブルで接続してもゲストOSで認識できない場合には、一旦Ubunthをシャットダウンして、作成した仮想PCのインストールフォルダ以下の.vmxファイルに下記の1行を追加してください。

usb.restrictions.defaultAllow = "TRUE"

3) OSを最新の状態にする

下記のコマンドをターミナルから順次入力しOSを最新の状態にします。Ubunth20.04は最新の開発中バージョンではないので頻繁に更新はされません。

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9165938D90FDDD2E
$ sudo apt update
$ sudo apt upgrade
$ sudo reboot






4) 日本語関連のパッケージをインストール

日本語が必要な場合には、日本語関連パッケージをインストールします。

$ sudo apt install language-pack-ja-base language-pack-ja ibus-kkc





システムの文字セットを日本語に変更します

Settings->Region&Language->ManageInstalledLanguegeで、追加のセットアップ "The language support is not installed completely -> install”を実行します。




Laguageをクリックし日本語を選択します。



Logoutをクリックし一旦ログアウトをしてログインし直すとフォルダ名を日本語に変換するかどうか聞かれますので、お好みにあわせて設定します。ターミナルからCDコマンドで移動する場合には英語のままのほうが楽です。



入力ソースの「+」をクリックして日本語の中から使用しているキーボードのレイアウトと同じものを追加します。



画面上にある▼アイコンをクリックすると入力ソースを切り替えられますので、日本語を選択します。



英語の入力ソースは不要なら削除してしまってもかまいません。



「半角/全角 漢字」キーなどで日本語モードに切り替わり、全角文字が入力できるようになったことを確認します。入力ができない場合にはキーボードの選択が間違っている場合もあります。"_" ":" "{"などのキーが正しく打てるか確認してみてください。



5) libusb1.0の開発用パッケージのインストール

USBにアクセスするにはlibusbライブラリが必要です。libusbは0.1と1.0があり、それぞれ互換性はありません。RaspberryPiOSでは1.0がインストールされています。プライムシステムズ社のライブラリはlibusbの1.0を使用します。インストールされているバージョンを確認するには下記のコマンドを入力します。

$dpkg -l libusb-1.0*



RefAppQtを実行するだけなら、開発用パッケージは必要ありません。ここまでのインストールでストレージの使用量は12.1GB程度になります。Qt5でアプリケーションを作成したり、変更して再ビルドする場合には開発用パッケージが必要になります。

$ sudo apt-get install libusb-1.0-0-dev
$ sudo apt-get install libudev-dev libudev1

6) USBデバイスのアクセス権の設定

新しいUSBデバイスが接続された場合、通常はOSかドライバがそれらにアクセスして必要なサービスを提供しますので、特権ユーザーのみにアクセス権があります。しかし、FPGAボード等のユーザー独自のハードウェアが接続された場合にはアプリケーションから直接アクセスしたいことになります。この場合、プログラムはユーザー権限で実行されますので、そのままではユーザープログラムUSBデバイスにアクセスできません。



USBデバイスにはそれぞれベンダーIDやデバイスIDが割り当てられており、/etc/udev/rules.d/*.rules ファイルを作成することで特定のデバイスが接続された時に、アクセス権限を指定することができます。

/etc/udev/rules.d/prime_systems.rules ファイルを作成します (ファイル名は.rulesで終わる必要があります)

$sudo vi /etc/udev/rules.d/prime_systems.rules

ファイルの中身は以下のようにします

SUBSYSTEM=="usb", ATTRS{idVendor}=="0a2f", MODE="0666"
SUBSYSTEM=="usb_device", ATTRS{idVendor}=="0a2f", MODE="0666"




下記のコマンドを入力して変更を有効にします。Smart-USBデバイスをいったん外して、再度接続して書込み属性が有効になっていることを確認します。

$ sudo udevadm control --reload-rules

$ ls -l /dev/bus/usb/00*
crw-rw-rw- 1 root root 189, 386 6月 2 19:00 003 (otherが書込み可になっていればOK)





これでPrimeSystems社製のSmart-USBシリーズが接続された場合にユーザーモードからアクセスできるようになります

7) 自動ログイン

Raspberry Piを組み込み器機として使用する場合には、パスワードを入力せずに自動でログインした状態にしたいと思います。今回は開発環境用の仮想PCですが、基本的に操作は同じなので自動ログインを設定してみます。設定->ユーザーを開いてロック解除します。ロック解除にはrootパスワードが必要です



ロック解除をすると自動ログインが設定できるようになります。これで起動時にログイン画面が表示されなくなります



8) Qt5.15/QtDesignerのインストール

LinuxでGUIアプリケーションを開発するにはQtを用います。WindowsのC#/WPFアプリケーションを移植できる方法も探してみたのですが、GUIレベルで使えるものは現在はなさそうです。Qtでのアプリケーションの作成方法はC#/WPFとはずいぶん違うようです。ぱっと見はWPFとQtDesignderでのGUIでのデザイン手法は似ていますが、似ているのはそこまでで、あとは共通なのはイベントドリブンであることぐらいです。またQtはC++であって、C#ではありません。とにかく他の方法はありませんので、QtでGUIアプリケーションを作れるようになるしかなさそうです。まずは、Qtをインストールしていきます。現在のQtの最新版は6.5ですが、安定している5.15LTSを使用することにします。

sudo apt-get install build-essential
sudo apt-get install qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools
sudo apt-get install qtcreator
sudo apt-get install qtmultimedia5-dev libqt5multimediawidgets5
sudo apt-get install libqt5multimedia5-plugins




サンプルプロジェクトとドキュメントもインストールしたい方は下記もインストールします。

sudo apt-get install `apt-cache search 5-examples | grep qt | grep example | awk '{print $1 }' | xargs` sudo apt-get install `apt-cache search 5-doc | grep "^qt" | awk '{print $1}' | xargs`



すべてのインストールコマンドを実行するとメニューからQt5デザイナを起動することができるようになっているはずです。




これでQt5の開発環境がインストールできました。この時点でのディスク使用料は14.9GBでした。仮想PCの場合にはこの時点のイメージを保存しておくことをお勧めします。なにかおかしくなった時に初期状態に戻すことができます。直接PCにインストールしたときにはバックアップツール等でバックアップを作成しておきましょう。

アクセスカウンター アクセスカウンター