2021年12月30日木曜日

電子ペーパーQUADERNO A5 (Gen. 2)使い始め

 候補の中から選んだ電子ペーパーは富士通のクアデルノQUADERNO A5 (Gen. 2)

ちょっと高かったけれど手書きで一番大事な書き心地が他の比べて明らかに優れていたのが決め手です。


とりあえず充電をしたのちに初期設定を開始、といってもペン入力の認識微調整だけ。

Wi-FiやBluetoothは今のところ使用する予定がないので未設定


ただ、QUADERNOのマイナスポイントであるPC連携が必須なのでPC(Mac)に専用アプリ(QUADERNO PC App)をインストールしてペアリングを実施しました。

ペアリングは問題なく完了したのでふとファームウェアのバージョンを確認するとちょっと古い事が判明

専用アプリ経由でバージョンアップを実施
さっそくスケジュールをと操作使用としたらないテンプレートがない・・・。

WEBから2022年版をダウンロードして専用アプリで転送して準備完了


仕事開始までに少し操作に慣れないと。。。



2021年12月26日日曜日

電子ペーパー(デジタルペーパー)を検討

 【候補】

  • シャープ:WG-PN1
  • KING JIM(キングジム):フリーノ
  • 富士通:QUADERNO(クアデルノ)
  • Onyx International:BOOX Note Air※候補に入れたものの未調査
【ペン操作感】
WG-PN1が一番もっさり昔ながらのタッチ感でクアデルノが圧倒的に書きやすい。

【サイズ、重さ】
クアデルノはA5,A4が一番大きいけれど他と比べてもそれほど重く感じない。

【価格】
WG-PN1は2万円台、フリーノが3万円台、クアデルノが4万円台

【個別の感想】
(WG-PN1)
値段的には一番安かったけれど他と比べると操作感がイマイチ、スケジュールなどゆっくり書く分には耐えられるかもしれないけれど打ち合わせの最中にメモをとるのは反応が遅く無理そう。
Wi-Fiの設定もPCのユーティリティーからしか出来ないらしい。(PCとの連携が必須)

(フリーノ)
予算的にもこの辺がギリギリな感じ、PCがなくてもメールやDropboxにデータを待避出来るのは助かるかも。手書きを考えるとサイズ的にちょっと小さい感じでもあり携帯性を考えると丁度良いサイズで悩ましいところ。
PCのユーティリティーが今時Windowsだけっていうのはマイナス。
書き心地はまぁギリギリ我慢できるところ。
スケジュール管理に使用したいのでメニューからすぐアクセスできるのは嬉しい、ノートに表をすぐに書ける機能も以外に便利かも。

(クアデルノ)
A5サイズを検討しているけれど自分的にはもう一回り小さいと理想的かも。
書き心地は他に比べ圧倒的に優れていて打ち合わせの中の雑なメモ書きでも十分耐えられそう。
書き込んだ情報は独自形式ではなくpdf形式の様なのでバックアップのためにいちいち変換する必要がないのはいいかも。
気になるのはPC連携時に必ず専用ソフト経由であること、インストールするのは構わないけれど富士通はいつまでサポートしてくれるのだろう、スケジュールのテンプレートも今は提供してくれているようだけどOSバージョンアップの対応などつねにコストが発生するわけでこの手の専用デバイスはメーカー都合に左右されてしまうのが心配のためかもしれない。
いっそうのことストレージとして認識させてくれて少なくともファイルのやりとりぐらいできればそれだけでも十分かも。

BOOXはかなり優れていそうだけどほぼぼAndroidタブレットなので対象外かな。

さて、どうしようかな。



2021年11月28日日曜日

楽天モバイルRakuten WiFi Pocket 2のデータ管理

楽天モバイルRakuten WiFi Pocket 2を使用しだしてもうじき1ヶ月、ルータの画面のデータ使用量を見ている限りでは予想通り1Gには到達しなさそうなので追加費用は発生しなさそう。

ふと、ルーターに表示しているデータ使用量はいつリセットされるのだろうか・・・まさかただ増え続けるだけということはないと思いたい。
しかし、そのへんを記載したマニュアルもなくなんと不親切なことか。

WEBで検索すると楽天モバイルのQAサイトには記載がありました。

設定はルーターの管理画面にログインしデータ管理の設定を行うことでデータ使用量のリセットタイミングや設定した使用量を超えた時になにかしらメッセージしてくれるようです。

説明は少なくデータ管理画面のUIもイマイチではあるものの無事設定完了。

このぐらいデフォルト設定しておいてもいいのではないと思うけれどこれが楽天のサービスレベルなのかな。


2021年11月15日月曜日

matplotlibの代わりにseabornでグラフを描く準備

 matplotlibではなくseabornでグラフを描いたほうが見た目がよさそうなのでインストールとテスト描画をしてみました。


【インストール】

>pip install seaborn


どうやら0.11.2がインストールされたようです。

【テストデータ】

今回は昔の日経平均を表示させてみました、データはDataFraame形式でカラムは日経の値の'N225'と日時の'date'

(データイメージ)

【グラフ描画】

簡単な折れ線グラフを試してみました。引数にデータを格納している変数、x軸、y軸に表示させる対象のカラム、kindは線の種類

>import seaborn as sns
>sns.relplot(x='date',y='N225',data=df_raw_dataset,kind='line')

ちょっとこのグラフだとseabornにしたメリットが感じられないかもしれないけれどとりあえ描画できたので詳細はおいおい

【distplot関数について】

seabornを紹介されているサイトでよく見かけるdistplotを使用すると以下の様な警告がでるようです。将来廃止されるようで非推奨の関数のようです

FutureWarning: `distplot` is a deprecated function and will be removed in a future version. Please adapt your code to use either `displot` (a figure-level function with similar flexibility) or `histplot` (an axes-level function for histograms).


2021年11月7日日曜日

Chromebookを外に持ち出す(楽天モバイルRakuten WiFi Pocket 2を使用)

 最近、Chromebookを外に持ち出すことが多く、無料のWi-Fiを使用していましたが、利用場所が制限されるのでなんとかしたいと思っていました。

ちょうど楽天モバイルRakuten WiFi Pocket 2 本体価格1円キャンペーンが行われていることを知りました。ただこの手のキャンペーンいや回線に関わるサービス全般は本当に分かりにくく不利なことや制約は小さくあまり信用していません。が、結果的には今回契約しました。

【良かったこと】

・契約自体は1時間程度で完了し、その場で機械も受け取れすぐに使用できました。

・Wi-Fiルーターは思いのほか小さく軽く持ち運びに便利

・連続で10時間使用可能(自分は2時間程度の利用を予定していたので十分)

【悪かったこと、気になったこと】

5Gに対応していない(※自分の使い方的にはまったく不満はありません)

・0円をアピールされているけれどユニバーサルサービス料、電話リレーサービス料は毎月発生するのでまったくの0円ではない。たしかに注釈に小さく記載されているがこういうところが通信会社全般嫌いになる理由であることに気がつかないのかな。

・支払い方法にクレジットカードを選択した場合、カードの有効期限が切れる際には自分で支払い方法を切り替える必要がある。楽天モバイルからの事前通知はなく突然利用できなくなりなおかつ引き落としが出来ない旨のハガキがくるらしい、また引き落とし先変更時に手数料が発生するとのこと。

・銀行引き落としの場合は毎月手数料が発生するとのこと。

・料金は変更になる前後に事前通知や連絡はなくリミットを越えると料金が発生するとのこと、データチャージ機能があるのに提案もされることもないので使用データ量を考えながら自分でデータチャージ機能を活用する必要がある。(もっとユーザよりのサービス提供しないからイメージが悪くなる)

・ルータの製造メーカーが気になるかもしれない。あれだけニュースで話題にもなっているにも係わらず採用するのかと。(コスト優先ということかな)

【実際しようしてみ】

・ルータのSSID、パスワードをデフォルトから変更するためにはルーターの管理画面(http://192.168.0.1)にブラウザでアクセスする必要がりデフォルトパスワードは"admin"

・Chromebookから接続する際にQRコードをスキャンして接続させることは不可能、ただし一度接続させてしまえば次回から認証情報の入力は不要なので苦にはならない


なんか悪かったこと、気になることの方が多くじゃあ使用しないかというとスマフォのデータ通信料が少ないプランを使用している以上テザリングは難しく、なおかつChromebookを外で使用する頻度も少ない中でではこの楽天モバイルのプランが一番合っていると思っているのでしばくらは使い続けてみるつもりです。


2021年10月14日木曜日

【matplotlib】FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated

matplotlibでグラフ表示をさせていたところ以下の警告メッセージ

FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version.  Convert to a numpy array before indexing instead.

どうやら非推奨な使い方?をしているようです。

グラフデータに<class 'pandas.core.indexes.datetimes.DatetimeIndex'>や<class 'pandas.core.series.Series'>型のデータを渡しているだけなのですが・・・。

【Version】
matplotlib:3.0.2
pandas:1.3.3
numpy:1.21.2

色々調べて結局valuesかto_numpy()で<class 'numpy.ndarray'>型に変換して渡すことで解決できました。(valuesよりto_numpy()が推奨されているらしい)

2021年10月12日火曜日

pandas-datareaderで株価、市場指標を取得してみる

Pythonで機械学習を勉強している時にテストデータとして株価か市場指標を使用と思い取得方法を調べてみるとpandas-datareaderライブラリが便利そうなことが判明

早速インストール

・インストールログ

pip install pandas-datareader

Defaulting to user installation because normal site-packages is not writeable

Collecting pandas-datareader

  Downloading pandas_datareader-0.10.0-py3-none-any.whl (109 kB)

     |████████████████████████████████| 109 kB 536 kB/s 

Collecting lxml

  Downloading lxml-4.6.3-cp37-cp37m-manylinux2014_aarch64.whl (6.7 MB)

     |████████████████████████████████| 6.7 MB 1.4 MB/s 

Requirement already satisfied: requests>=2.19.0 in ./.local/lib/python3.7/site-packages (from pandas-datareader) (2.26.0)

Requirement already satisfied: pandas>=0.23 in ./.local/lib/python3.7/site-packages (from pandas-datareader) (1.3.3)

Requirement already satisfied: numpy>=1.17.3 in ./.local/lib/python3.7/site-packages (from pandas>=0.23->pandas-datareader) (1.21.2)

Requirement already satisfied: pytz>=2017.3 in ./.local/lib/python3.7/site-packages (from pandas>=0.23->pandas-datareader) (2021.1)

Requirement already satisfied: python-dateutil>=2.7.3 in ./.local/lib/python3.7/site-packages (from pandas>=0.23->pandas-datareader) (2.8.1)

Requirement already satisfied: six>=1.5 in ./.local/lib/python3.7/site-packages (from python-dateutil>=2.7.3->pandas>=0.23->pandas-datareader) (1.15.0)

Requirement already satisfied: idna<4,>=2.5 in ./.local/lib/python3.7/site-packages (from requests>=2.19.0->pandas-datareader) (3.2)

Requirement already satisfied: certifi>=2017.4.17 in ./.local/lib/python3.7/site-packages (from requests>=2.19.0->pandas-datareader) (2021.5.30)

Requirement already satisfied: urllib3<1.27,>=1.21.1 in ./.local/lib/python3.7/site-packages (from requests>=2.19.0->pandas-datareader) (1.26.6)

Requirement already satisfied: charset-normalizer~=2.0.0 in ./.local/lib/python3.7/site-packages (from requests>=2.19.0->pandas-datareader) (2.0.6)

Installing collected packages: lxml, pandas-datareader

Successfully installed lxml-4.6.3 pandas-datareader-0.10.0


・取得テスト

国内国内のトヨタ(7203.T)の株価を取得してみる

python3

Python 3.7.3 (default, Jan 22 2021, 20:04:44) 

[GCC 8.3.0] on linux

Type "help", "copyright", "credits" or "license" for more information.

>>> from pandas_datareader import data

>>> df = data.DataReader('7203.T','yahoo')

>>> df.head(5)


                   High          Low  ...      Volume   Adj Close

Date                                  ...                        

2016-10-12  1201.199951  1188.000000  ...  25115500.0  962.449158

2016-10-13  1211.599976  1190.800049  ...  39343500.0  964.387817

2016-10-14  1199.400024  1184.400024  ...  31210500.0  968.265503

2016-10-17  1212.599976  1198.199951  ...  28159500.0  974.243408

2016-10-18  1202.800049  1189.400024  ...  27223000.0  967.780762


[5 rows x 6 columns]


・複数銘柄、取得期間指定して取得してみる

df = data.DataReader(['2914.T','9513.T'],'yahoo','2021-10-01','2021-10-10')

>>> df.head(5)

Attributes Adj Close           Close          ...    Open           Volume         

Symbols       2914.T  9513.T  2914.T  9513.T  ...  2914.T  9513.T   2914.T   9513.T

Date                                          ...                                  

2021-10-01    2172.5  1597.0  2172.5  1597.0  ...  2174.0  1605.0  4596700   892700

2021-10-04    2159.5  1629.0  2159.5  1629.0  ...  2180.5  1608.0  4433800  1266300

2021-10-05    2165.0  1612.0  2165.0  1612.0  ...  2156.0  1626.0  3440000  1014500

2021-10-06    2193.0  1655.0  2193.0  1655.0  ...  2176.5  1625.0  5366200  1310600

2021-10-07    2181.0  1636.0  2181.0  1636.0  ...  2190.5  1658.0  2994300   748400


[5 rows x 12 columns]


・市場指標(日経平均)を取得してみる

df = data.DataReader(['^N225'],'yahoo','2021-10-01','2021-10-10')

>>> df.head(5)

Attributes     Adj Close         Close  ...          Open     Volume

Symbols            ^N225         ^N225  ...         ^N225      ^N225

Date                                    ...                         

2021-10-01  28771.070312  28771.070312  ...  29235.109375   82200000

2021-10-04  28444.890625  28444.890625  ...  29044.470703   76400000

2021-10-05  27822.119141  27822.119141  ...  28050.390625   88200000

2021-10-06  27528.869141  27528.869141  ...  28033.910156  100200000

2021-10-07  27678.210938  27678.210938  ...  27665.970703   79600000


[5 rows x 6 columns]


・米国株式情報を取得してみる

df = data.DataReader(['AMD'],'yahoo','2021-10-01','2021-10-10')

>>> df.head(3)

Attributes   Adj Close       Close        High         Low        Open    Volume

Symbols            AMD         AMD         AMD         AMD         AMD       AMD

Date                                                                            

2021-09-30  102.900002  102.900002  104.440002  101.989998  102.080002  57588500

2021-10-01  102.449997  102.449997  103.000000  100.639999  102.599998  41491600

2021-10-04  100.339996  100.339996  101.849998   99.820000  101.739998  41967100


・その他銘柄/指標

【NASDAQ】^IXIC

【S&P500】^GSPC

【NYダウ】^DJI


・取得できるカラム情報

 Adj Close:調整後終値

Close:終値

High:高値

Low:安値

Open:始値

Volume:出来高

・その他

情報の取得サイトによって取サーバに負荷がかかるため取得禁止の場合もあるので事前に確認が必要のようです。

2021年9月26日日曜日

【Keras2.6】ImportError: cannot import name 'Adam' from 'keras.optimizers'

keras2.6でAdamをインポートすると以下のエラーがでました

ImportError: cannot import name 'Adam' from 'keras.optimizers'

以前のバージョンから変わったようです。

ProgrammerAHのブログを参考して以下の通りに修正

(修正前)
from keras.optimizers import Adam

(修正後)
from keras.optimizers import adam_v2

実際Adamを使用しているところも合わせて修正

(修正前)
model.compile(loss='categorical_crossentropy', optimizer=Adam(), metrics=['accuracy']) 

(修正後)
model.compile(loss='categorical_crossentropy', optimizer=adam_v2.Adam(), metrics=['accuracy']) 

参考書とのバージョン差異がポツリポツリと・・・勉強中のみとしてはこういうのは辛いかも。

2021年9月21日火曜日

keras2.6でAttributeError: module 'keras.optimizers' has no attribute 'SGD'

参考書通りにコーディングしてみたところエラー・・・・。
たしかに環境は違うけれど困る。 

【エラーメッセージ】
>>> sgd = optimizers.SGD(lr=0.01, clipnorm=1.)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: module 'keras.optimizers' has no attribute 'SGD'


>>> import keras
>>> keras.__version__
'2.6.0'>>> from keras import optimizers

dirコマンドでoptimizersを確認すると確かにSGDはなく、仕様が変更されたのかな・・・。
検索しても意外に情報が少なくもしかしてあたりまえ?常識

とりあえず無事別の方法を発見、ついでにオプションのlrは非推奨になったようで変わりにlearning_rateを使用するらしい。

【代替え?】
>>> sgd = optimizers.gradient_descent_v2.SGD(lr=0.001, clipnorm=1.)
/home/xx/.local/lib/python3.7/site-packages/keras/optimizer_v2/optimizer_v2.py:356: UserWarning: The `lr` argument is deprecated, use `learning_rate` instead.
  "The `lr` argument is deprecated, use `learning_rate` instead.")

--------------------------------------------

【追記】

kerasはtensorflow.kerasとしてTensorFlow2にで組み込まれたようです。単独のkerasの使い方が変わっているようです。

2021年9月19日日曜日

【TensorFlow】Chromebook(ARM64)のLinux(Debian)にPython3.7+TensorFlow2.6.0+ keras

 Pandasのインストールも問題なく終わったので早速TensorFlowをインストールしようとpipコマンドで実行してみると。

pip install tensorflow

Defaulting to user installation because normal site-packages is not writeable

ERROR: Could not find a version that satisfies the requirement tensorflow (from versions: none)

ERROR: No matching distribution found for tensorflow

対象のバージョンがない?

調べてみるとこういうケースはあるようでPtyhon3.7は以前は対応していなかったらしいですが調べていくうちに現在は対応していることは判明、一安心。

どうやら自分の環境に合うパッケージ(whl)ファイルをダウンロードしてインストールすれば良さそうということが分かりました。

■端末構成

ASUS Chromebook Detachable CM3

$cat /etc/issue
Debian GNU/Linux 10 \n \l

コードネームはbuster

$lscpu
Architecture:        aarch64
Byte Order:          Little Endian
CPU(s):              8
On-line CPU(s) list: 0-7
Thread(s) per core:  1
Core(s) per socket:  4
Socket(s):           2
Vendor ID:           ARM
Model:               4
Model name:          Cortex-A53
Stepping:            r0p4
BogoMIPS:            26.00
Flags:               fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid

Python 3.7.3 (default, Jan 22 2021, 20:04:44)

■numpyの最新化

ダウンロードするパッケージを選ぶ際にnumpyのバージョンらしい数字で分れていたので事前に最新化
・バージョン確認
$pip list --outdated
Package           Version Latest Type
----------------- ------- ------ -----
numpy             1.20.3  1.21.2 wheel

・バージョンアップ
$pip install --upgrade numpy

■ TensorFlowパッケージファイルダウンロード

ダウンロードサイト:https://github.com/PINTO0309/Tensorflow-bin

事前に調べたArchitectureとPythonのバージョンとnumpyのバージョンからtensorflow-2.6.0-cp37-none-linux_aarch64_numpy1211_download.shを選択

リンクからwhlファイルをダウンロードできるわけではなさそうで上記のshファイルをダウンロードするらしい。
ただダウンロード方法が分からずリンク先にあるshファイルのソースをコピーして適当に作成したローカルファイル(/tmp/download.sh)にソースをペースト

(https://github.com/PINTO0309/Tensorflow-binから引用) 

#!/bin/bash

curl -sc /tmp/cookie "https://drive.google.com/uc?export=download&id=1XnV8W38HGW4PmENmfQA5-5NrQ84SsTqX" > /dev/null
CODE="$(awk '/_warning_/ {print $NF}' /tmp/cookie)"
curl -Lb /tmp/cookie "https://drive.google.com/uc?export=download&confirm=${CODE}&id=1XnV8W38HGW4PmENmfQA5-5NrQ84SsTqX" -o tensorflow-2.6.0-cp37-none-linux_aarch64.whl
echo Download finished.


download.shに実行権を付与した後download.shを実行して無事tensorflow-2.6.0-cp37-none-linux_aarch64.whlを入手

■TensorFlowインストール

さっそくインストールしてみると
pip install tensorflow-2.6.0-cp37-none-linux_aarch64.whl

(エラー)
Defaulting to user installation because normal site-packages is not writeable
Processing ./tensorflow-2.6.0-cp37-none-linux_aarch64.whl
Collecting h5py~=3.1.0
  Downloading h5py-3.1.0.tar.gz (371 kB)
     |████████████████████████████████| 371 kB 1.5 MB/s
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
    Preparing wheel metadata ... done
Collecting tensorflow-estimator~=2.6
  Downloading tensorflow_estimator-2.6.0-py2.py3-none-any.whl (462 kB)
     |████████████████████████████████| 462 kB 2.3 MB/s
Collecting wheel~=0.35
  Using cached wheel-0.37.0-py2.py3-none-any.whl (35 kB)
Collecting six~=1.15.0
  Downloading six-1.15.0-py2.py3-none-any.whl (10 kB)
Collecting clang~=5.0
  Downloading clang-5.0.tar.gz (30 kB)
Collecting keras-preprocessing~=1.1.2
  Downloading Keras_Preprocessing-1.1.2-py2.py3-none-any.whl (42 kB)
     |████████████████████████████████| 42 kB 284 kB/s
Collecting flatbuffers~=1.12.0
  Downloading flatbuffers-1.12-py2.py3-none-any.whl (15 kB)
Collecting keras~=2.6
  Downloading keras-2.6.0-py2.py3-none-any.whl (1.3 MB)
     |████████████████████████████████| 1.3 MB 7.3 MB/s
Collecting gast==0.4.0
  Downloading gast-0.4.0-py3-none-any.whl (9.8 kB)
Collecting grpcio<2.0,>=1.37.0
  Downloading grpcio-1.40.0-cp37-cp37m-manylinux_2_24_aarch64.whl (39.2 MB)
     |████████████████████████████████| 39.2 MB 40 kB/s
Collecting termcolor~=1.1.0
  Downloading termcolor-1.1.0.tar.gz (3.9 kB)
Requirement already satisfied: numpy~=1.21.1 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.21.2)
Collecting opt-einsum~=3.3.0
  Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB)
     |████████████████████████████████| 65 kB 846 kB/s
Collecting absl-py~=0.10
  Downloading absl_py-0.13.0-py3-none-any.whl (132 kB)
     |████████████████████████████████| 132 kB 12.6 MB/s
Collecting typing-extensions~=3.7.4
  Downloading typing_extensions-3.7.4.3-py3-none-any.whl (22 kB)
Collecting google-pasta~=0.2
  Downloading google_pasta-0.2.0-py3-none-any.whl (57 kB)
     |████████████████████████████████| 57 kB 1.3 MB/s
Collecting tensorboard~=2.6
  Downloading tensorboard-2.6.0-py3-none-any.whl (5.6 MB)
     |████████████████████████████████| 5.6 MB 10.0 MB/s
Collecting wrapt~=1.12.1
  Downloading wrapt-1.12.1.tar.gz (27 kB)
Collecting protobuf>=3.9.2
  Downloading protobuf-3.18.0-cp37-cp37m-manylinux2014_aarch64.whl (924 kB)
     |████████████████████████████████| 924 kB 10.7 MB/s
Collecting astunparse~=1.6.3
  Downloading astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
Collecting cached-property
  Downloading cached_property-1.5.2-py2.py3-none-any.whl (7.6 kB)
Collecting google-auth<2,>=1.6.3
  Downloading google_auth-1.35.0-py2.py3-none-any.whl (152 kB)
     |████████████████████████████████| 152 kB 11.5 MB/s
Collecting tensorboard-data-server<0.7.0,>=0.6.0
  Downloading tensorboard_data_server-0.6.1-py3-none-any.whl (2.4 kB)
Collecting setuptools>=41.0.0
  Using cached setuptools-58.0.4-py3-none-any.whl (816 kB)
Collecting tensorboard-plugin-wit>=1.6.0
  Downloading tensorboard_plugin_wit-1.8.0-py3-none-any.whl (781 kB)
     |████████████████████████████████| 781 kB 8.2 MB/s
Collecting werkzeug>=0.11.15
  Downloading Werkzeug-2.0.1-py3-none-any.whl (288 kB)
     |████████████████████████████████| 288 kB 8.9 MB/s
Collecting google-auth-oauthlib<0.5,>=0.4.1
  Downloading google_auth_oauthlib-0.4.6-py2.py3-none-any.whl (18 kB)
Collecting requests<3,>=2.21.0
  Downloading requests-2.26.0-py2.py3-none-any.whl (62 kB)
     |████████████████████████████████| 62 kB 154 kB/s
Collecting markdown>=2.6.8
  Downloading Markdown-3.3.4-py3-none-any.whl (97 kB)
     |████████████████████████████████| 97 kB 1.1 MB/s
Collecting pyasn1-modules>=0.2.1
  Downloading pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB)
     |████████████████████████████████| 155 kB 8.5 MB/s
Collecting rsa<5,>=3.1.4
  Downloading rsa-4.7.2-py3-none-any.whl (34 kB)
Collecting cachetools<5.0,>=2.0.0
  Downloading cachetools-4.2.2-py3-none-any.whl (11 kB)
Collecting requests-oauthlib>=0.7.0
  Downloading requests_oauthlib-1.3.0-py2.py3-none-any.whl (23 kB)
Collecting importlib-metadata
  Downloading importlib_metadata-4.8.1-py3-none-any.whl (17 kB)
Collecting pyasn1<0.5.0,>=0.4.6
  Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
     |████████████████████████████████| 77 kB 1.3 MB/s
Collecting certifi>=2017.4.17
  Downloading certifi-2021.5.30-py2.py3-none-any.whl (145 kB)
     |████████████████████████████████| 145 kB 8.2 MB/s
Collecting charset-normalizer~=2.0.0
  Downloading charset_normalizer-2.0.6-py3-none-any.whl (37 kB)
Collecting idna<4,>=2.5
  Downloading idna-3.2-py3-none-any.whl (59 kB)
     |████████████████████████████████| 59 kB 1.6 MB/s
Collecting urllib3<1.27,>=1.21.1
  Downloading urllib3-1.26.6-py2.py3-none-any.whl (138 kB)
     |████████████████████████████████| 138 kB 15.9 MB/s
Collecting oauthlib>=3.0.0
  Downloading oauthlib-3.1.1-py2.py3-none-any.whl (146 kB)
     |████████████████████████████████| 146 kB 1.6 MB/s
Collecting zipp>=0.5
  Downloading zipp-3.5.0-py3-none-any.whl (5.7 kB)
Building wheels for collected packages: clang, h5py, termcolor, wrapt
  Building wheel for clang (setup.py) ... done
  Created wheel for clang: filename=clang-5.0-py3-none-any.whl size=30705 sha256=965264867ac952ffe0cdcd7e9e4ec815662a7d5e09bd44b5542bf4283fab3ac9
  Stored in directory: /home/hoto/.cache/pip/wheels/98/91/04/971b4c587cf47ae952b108949b46926f426c02832d120a082a
  Building wheel for h5py (PEP 517) ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 /home/hoto/.local/lib/python3.7/site-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmpjazixgh6
       cwd: /tmp/pip-install-r_317f6s/h5py_3678e278ecf34daf8f166a7050ac0992
  Complete output (69 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-aarch64-3.7
  creating build/lib.linux-aarch64-3.7/h5py
  copying h5py/__init__.py -> build/lib.linux-aarch64-3.7/h5py
  copying h5py/h5py_warnings.py -> build/lib.linux-aarch64-3.7/h5py
  copying h5py/ipy_completer.py -> build/lib.linux-aarch64-3.7/h5py
  copying h5py/version.py -> build/lib.linux-aarch64-3.7/h5py
  creating build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/__init__.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/attrs.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/base.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/compat.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/dataset.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/datatype.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/dims.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/files.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/filters.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/group.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/selections.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/selections2.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/vds.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  creating build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/__init__.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/common.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/conftest.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_attribute_create.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_attrs.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_attrs_data.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_base.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_big_endian_file.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_completions.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dataset.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dataset_getitem.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dataset_swmr.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_datatype.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dimension_scales.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dims_dimensionproxy.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dtype.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_errors.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_file.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_file2.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_file_image.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_filters.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_group.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5d_direct_chunk.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5f.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5p.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5pl.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5t.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_objects.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_selections.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_slicing.py -> build/lib.linux-aarch64-3.7/h5py/tests
  creating build/lib.linux-aarch64-3.7/h5py/tests/data_files
  copying h5py/tests/data_files/__init__.py -> build/lib.linux-aarch64-3.7/h5py/tests/data_files
  creating build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/test_vds/__init__.py -> build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/test_vds/test_highlevel_vds.py -> build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/test_vds/test_lowlevel_vds.py -> build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/test_vds/test_virtual_source.py -> build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/data_files/vlen_string_dset.h5 -> build/lib.linux-aarch64-3.7/h5py/tests/data_files
  copying h5py/tests/data_files/vlen_string_dset_utc.h5 -> build/lib.linux-aarch64-3.7/h5py/tests/data_files
  copying h5py/tests/data_files/vlen_string_s390x.h5 -> build/lib.linux-aarch64-3.7/h5py/tests/data_files
  running build_ext
  Building h5py requires pkg-config unless the HDF5 path is explicitly specified
  error: pkg-config probably not installed: FileNotFoundError(2, "No such file or directory: 'pkg-config'")
  ----------------------------------------
  ERROR: Failed building wheel for h5py
  Building wheel for termcolor (setup.py) ... done
  Created wheel for termcolor: filename=termcolor-1.1.0-py3-none-any.whl size=4831 sha256=49219dc8d2a0984da0c4841b0c5e83788f3a3c4f55832a1f160a0443442de651
  Stored in directory: /home/hoto/.cache/pip/wheels/3f/e3/ec/8a8336ff196023622fbcb36de0c5a5c218cbb24111d1d4c7f2
  Building wheel for wrapt (setup.py) ... done
  Created wheel for wrapt: filename=wrapt-1.12.1-cp37-cp37m-linux_aarch64.whl size=72882 sha256=7d42f58dc8673df65fb0f65475d3cc0c5d9b5465a8410228b7998e619e588a89
  Stored in directory: /home/hoto/.cache/pip/wheels/62/76/4c/aa25851149f3f6d9785f6c869387ad82b3fd37582fa8147ac6
Successfully built clang termcolor wrapt
Failed to build h5py
ERROR: Could not build wheels for h5py which use PEP 517 and cannot be installed directly

失敗・・・。
どうやらh5py関連でエラーのようなのでエラーメッセージで検索し同じ様なケースの対応をとりあえず真似してみました。

これ以降はどれが正解だったのか分からずとりあえずやった内容を列挙


setuptoolsとwheelが古いとなる情報がありpip install --upgrade setuptools wheelでアップデート
→失敗

h5pyを単体で色々なオプションで試行
pip install --no-use-pep517 h5py
→失敗
pip install --no-binary h5py
→失敗
pip install --no-binary=h5py h5py
→失敗

pkg-configをインストール
#sudo apt list --installed | grep pkg-config
→失敗

debinのパッケージにh5pyがあるようなのでインストール
#sudo apt install python3-h5py
→バージョンが2.8.0-3となんか古そう

再度TensorFlowのインストールを試行

pip install tensorflow-2.6.0-cp37-none-linux_aarch64.whl

Defaulting to user installation because normal site-packages is not writeable
Processing ./tensorflow-2.6.0-cp37-none-linux_aarch64.whl
Collecting keras-preprocessing~=1.1.2
  Using cached Keras_Preprocessing-1.1.2-py2.py3-none-any.whl (42 kB)
Collecting clang~=5.0
  Using cached clang-5.0-py3-none-any.whl
Collecting wrapt~=1.12.1
  Using cached wrapt-1.12.1-cp37-cp37m-linux_aarch64.whl
Collecting opt-einsum~=3.3.0
  Using cached opt_einsum-3.3.0-py3-none-any.whl (65 kB)
Collecting astunparse~=1.6.3
  Using cached astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
Collecting tensorflow-estimator~=2.6
  Using cached tensorflow_estimator-2.6.0-py2.py3-none-any.whl (462 kB)
Collecting tensorboard~=2.6
  Using cached tensorboard-2.6.0-py3-none-any.whl (5.6 MB)
Collecting termcolor~=1.1.0
  Using cached termcolor-1.1.0-py3-none-any.whl
Collecting gast==0.4.0
  Using cached gast-0.4.0-py3-none-any.whl (9.8 kB)
Collecting flatbuffers~=1.12.0
  Using cached flatbuffers-1.12-py2.py3-none-any.whl (15 kB)
Requirement already satisfied: wheel~=0.35 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (0.37.0)
Collecting six~=1.15.0
  Using cached six-1.15.0-py2.py3-none-any.whl (10 kB)
Collecting keras~=2.6
  Using cached keras-2.6.0-py2.py3-none-any.whl (1.3 MB)
Collecting absl-py~=0.10
  Using cached absl_py-0.13.0-py3-none-any.whl (132 kB)
Collecting google-pasta~=0.2
  Using cached google_pasta-0.2.0-py3-none-any.whl (57 kB)
Collecting grpcio<2.0,>=1.37.0
  Using cached grpcio-1.40.0-cp37-cp37m-manylinux_2_24_aarch64.whl (39.2 MB)
Collecting protobuf>=3.9.2
  Using cached protobuf-3.18.0-cp37-cp37m-manylinux2014_aarch64.whl (924 kB)
Collecting h5py~=3.1.0
  Using cached h5py-3.1.0.tar.gz (371 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
    Preparing wheel metadata ... done
Collecting typing-extensions~=3.7.4
  Using cached typing_extensions-3.7.4.3-py3-none-any.whl (22 kB)
Requirement already satisfied: numpy~=1.21.1 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.21.2)
Collecting cached-property
  Using cached cached_property-1.5.2-py2.py3-none-any.whl (7.6 kB)
Requirement already satisfied: setuptools>=41.0.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (58.0.4)
Collecting google-auth<2,>=1.6.3
  Using cached google_auth-1.35.0-py2.py3-none-any.whl (152 kB)
Collecting requests<3,>=2.21.0
  Using cached requests-2.26.0-py2.py3-none-any.whl (62 kB)
Collecting google-auth-oauthlib<0.5,>=0.4.1
  Using cached google_auth_oauthlib-0.4.6-py2.py3-none-any.whl (18 kB)
Collecting werkzeug>=0.11.15
  Using cached Werkzeug-2.0.1-py3-none-any.whl (288 kB)
Collecting tensorboard-data-server<0.7.0,>=0.6.0
  Using cached tensorboard_data_server-0.6.1-py3-none-any.whl (2.4 kB)
Collecting markdown>=2.6.8
  Using cached Markdown-3.3.4-py3-none-any.whl (97 kB)
Collecting tensorboard-plugin-wit>=1.6.0
  Using cached tensorboard_plugin_wit-1.8.0-py3-none-any.whl (781 kB)
Collecting cachetools<5.0,>=2.0.0
  Using cached cachetools-4.2.2-py3-none-any.whl (11 kB)
Collecting rsa<5,>=3.1.4
  Using cached rsa-4.7.2-py3-none-any.whl (34 kB)
Collecting pyasn1-modules>=0.2.1
  Using cached pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB)
Collecting requests-oauthlib>=0.7.0
  Using cached requests_oauthlib-1.3.0-py2.py3-none-any.whl (23 kB)
Collecting importlib-metadata
  Using cached importlib_metadata-4.8.1-py3-none-any.whl (17 kB)
Collecting pyasn1<0.5.0,>=0.4.6
  Using cached pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
Collecting urllib3<1.27,>=1.21.1
  Using cached urllib3-1.26.6-py2.py3-none-any.whl (138 kB)
Collecting charset-normalizer~=2.0.0
  Using cached charset_normalizer-2.0.6-py3-none-any.whl (37 kB)
Collecting idna<4,>=2.5
  Using cached idna-3.2-py3-none-any.whl (59 kB)
Collecting certifi>=2017.4.17
  Using cached certifi-2021.5.30-py2.py3-none-any.whl (145 kB)
Collecting oauthlib>=3.0.0
  Using cached oauthlib-3.1.1-py2.py3-none-any.whl (146 kB)
Collecting zipp>=0.5
  Using cached zipp-3.5.0-py3-none-any.whl (5.7 kB)
Building wheels for collected packages: h5py
  Building wheel for h5py (PEP 517) ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 /home/hoto/.local/lib/python3.7/site-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmpqu4eq5l4
       cwd: /tmp/pip-install-r22datm0/h5py_c83ebf6719484a6cb76ecd27971abef2
  Complete output (70 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-aarch64-3.7
  creating build/lib.linux-aarch64-3.7/h5py
  copying h5py/__init__.py -> build/lib.linux-aarch64-3.7/h5py
  copying h5py/h5py_warnings.py -> build/lib.linux-aarch64-3.7/h5py
  copying h5py/ipy_completer.py -> build/lib.linux-aarch64-3.7/h5py
  copying h5py/version.py -> build/lib.linux-aarch64-3.7/h5py
  creating build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/__init__.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/attrs.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/base.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/compat.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/dataset.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/datatype.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/dims.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/files.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/filters.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/group.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/selections.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/selections2.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  copying h5py/_hl/vds.py -> build/lib.linux-aarch64-3.7/h5py/_hl
  creating build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/__init__.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/common.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/conftest.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_attribute_create.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_attrs.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_attrs_data.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_base.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_big_endian_file.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_completions.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dataset.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dataset_getitem.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dataset_swmr.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_datatype.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dimension_scales.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dims_dimensionproxy.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_dtype.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_errors.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_file.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_file2.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_file_image.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_filters.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_group.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5d_direct_chunk.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5f.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5p.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5pl.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_h5t.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_objects.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_selections.py -> build/lib.linux-aarch64-3.7/h5py/tests
  copying h5py/tests/test_slicing.py -> build/lib.linux-aarch64-3.7/h5py/tests
  creating build/lib.linux-aarch64-3.7/h5py/tests/data_files
  copying h5py/tests/data_files/__init__.py -> build/lib.linux-aarch64-3.7/h5py/tests/data_files
  creating build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/test_vds/__init__.py -> build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/test_vds/test_highlevel_vds.py -> build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/test_vds/test_lowlevel_vds.py -> build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/test_vds/test_virtual_source.py -> build/lib.linux-aarch64-3.7/h5py/tests/test_vds
  copying h5py/tests/data_files/vlen_string_dset.h5 -> build/lib.linux-aarch64-3.7/h5py/tests/data_files
  copying h5py/tests/data_files/vlen_string_dset_utc.h5 -> build/lib.linux-aarch64-3.7/h5py/tests/data_files
  copying h5py/tests/data_files/vlen_string_s390x.h5 -> build/lib.linux-aarch64-3.7/h5py/tests/data_files
  running build_ext
  Loading library to get version: libhdf5.so
  error: Unable to load dependency HDF5, make sure HDF5 is installed properly
  error: libhdf5.so: cannot open shared object file: No such file or directory
  ----------------------------------------
  ERROR: Failed building wheel for h5py
Failed to build h5py
ERROR: Could not build wheels for h5py which use PEP 517 and cannot be installed directly

失敗・・・でもエラーメッセージが変わっているようで今度はlibhdf5関連

似た事象をインターネットで調べてversioned-hdf5をインストールしてみたけれど失敗・・・。

よくxx.soファイルがないのはコンパイルに必要なライブラリがない場合がおおいのでdebianパッケージのlibhdf5-devをインストールしてみる

#sudo apt install libhdf5-dev

TensorFlowのインストールを試行

pip install tensorflow-2.6.0-cp37-none-linux_aarch64.whl
Defaulting to user installation because normal site-packages is not writeable
Processing ./tensorflow-2.6.0-cp37-none-linux_aarch64.whl
Requirement already satisfied: six~=1.15.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.15.0)
Requirement already satisfied: grpcio<2.0,>=1.37.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.40.0)
Requirement already satisfied: protobuf>=3.9.2 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (3.18.0)
Requirement already satisfied: clang~=5.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (5.0)
Requirement already satisfied: keras~=2.6 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (2.6.0)
Requirement already satisfied: google-pasta~=0.2 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (0.2.0)
Requirement already satisfied: h5py~=3.1.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (3.1.0)
Requirement already satisfied: numpy~=1.21.1 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.21.2)
Requirement already satisfied: gast==0.4.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (0.4.0)
Requirement already satisfied: keras-preprocessing~=1.1.2 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.1.2)
Requirement already satisfied: wrapt~=1.12.1 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.12.1)
Requirement already satisfied: absl-py~=0.10 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (0.13.0)
Requirement already satisfied: opt-einsum~=3.3.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (3.3.0)
Requirement already satisfied: tensorflow-estimator~=2.6 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (2.6.0)
Requirement already satisfied: wheel~=0.35 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (0.37.0)
Requirement already satisfied: astunparse~=1.6.3 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.6.3)
Requirement already satisfied: flatbuffers~=1.12.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.12)
Requirement already satisfied: termcolor~=1.1.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (1.1.0)
Requirement already satisfied: typing-extensions~=3.7.4 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (3.7.4.3)
Requirement already satisfied: tensorboard~=2.6 in /home/hoto/.local/lib/python3.7/site-packages (from tensorflow==2.6.0) (2.6.0)
Requirement already satisfied: cached-property in /home/hoto/.local/lib/python3.7/site-packages (from h5py~=3.1.0->tensorflow==2.6.0) (1.5.2)
Requirement already satisfied: tensorboard-data-server<0.7.0,>=0.6.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (0.6.1)
Requirement already satisfied: setuptools>=41.0.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (58.0.4)
Requirement already satisfied: requests<3,>=2.21.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (2.26.0)
Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (0.4.6)
Requirement already satisfied: werkzeug>=0.11.15 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (2.0.1)
Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (1.8.0)
Requirement already satisfied: markdown>=2.6.8 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (3.3.4)
Requirement already satisfied: google-auth<2,>=1.6.3 in /home/hoto/.local/lib/python3.7/site-packages (from tensorboard~=2.6->tensorflow==2.6.0) (1.35.0)
Requirement already satisfied: cachetools<5.0,>=2.0.0 in /home/hoto/.local/lib/python3.7/site-packages (from google-auth<2,>=1.6.3->tensorboard~=2.6->tensorflow==2.6.0) (4.2.2)
Requirement already satisfied: pyasn1-modules>=0.2.1 in /home/hoto/.local/lib/python3.7/site-packages (from google-auth<2,>=1.6.3->tensorboard~=2.6->tensorflow==2.6.0) (0.2.8)
Requirement already satisfied: rsa<5,>=3.1.4 in /home/hoto/.local/lib/python3.7/site-packages (from google-auth<2,>=1.6.3->tensorboard~=2.6->tensorflow==2.6.0) (4.7.2)
Requirement already satisfied: requests-oauthlib>=0.7.0 in /home/hoto/.local/lib/python3.7/site-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard~=2.6->tensorflow==2.6.0) (1.3.0)
Requirement already satisfied: importlib-metadata in /home/hoto/.local/lib/python3.7/site-packages (from markdown>=2.6.8->tensorboard~=2.6->tensorflow==2.6.0) (4.8.1)
Requirement already satisfied: pyasn1<0.5.0,>=0.4.6 in /home/hoto/.local/lib/python3.7/site-packages (from pyasn1-modules>=0.2.1->google-auth<2,>=1.6.3->tensorboard~=2.6->tensorflow==2.6.0) (0.4.8)
Requirement already satisfied: certifi>=2017.4.17 in /home/hoto/.local/lib/python3.7/site-packages (from requests<3,>=2.21.0->tensorboard~=2.6->tensorflow==2.6.0) (2021.5.30)
Requirement already satisfied: idna<4,>=2.5 in /home/hoto/.local/lib/python3.7/site-packages (from requests<3,>=2.21.0->tensorboard~=2.6->tensorflow==2.6.0) (3.2)
Requirement already satisfied: charset-normalizer~=2.0.0 in /home/hoto/.local/lib/python3.7/site-packages (from requests<3,>=2.21.0->tensorboard~=2.6->tensorflow==2.6.0) (2.0.6)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /home/hoto/.local/lib/python3.7/site-packages (from requests<3,>=2.21.0->tensorboard~=2.6->tensorflow==2.6.0) (1.26.6)
Requirement already satisfied: oauthlib>=3.0.0 in /home/hoto/.local/lib/python3.7/site-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard~=2.6->tensorflow==2.6.0) (3.1.1)
Requirement already satisfied: zipp>=0.5 in /home/hoto/.local/lib/python3.7/site-packages (from importlib-metadata->markdown>=2.6.8->tensorboard~=2.6->tensorflow==2.6.0) (3.5.0)
Installing collected packages: tensorflow
Successfully installed tensorflow-2.6.0

無事インストール成功!!

■kerasのインストール


pip install keras

Defaulting to user installation because normal site-packages is not writeable
Collecting keras
  Using cached keras-2.6.0-py2.py3-none-any.whl (1.3 MB)
Installing collected packages: keras
Successfully installed keras-2.6.0

すんなりインストール完了

とりあえずインストールは完了したけれど本当に使用できるか試してみないと。

【追記】

kerasを調べていてITmediaの記事を読んでやっと理解、kerasはtensorflow.kerasとしてTensorFlow2にで組み込まれたようです。なのでわざわざkerasをインストールする必要はなかったようです。







2021年9月17日金曜日

【scikit-learn】Linux(ベータ版)にpandasとscikit-learnのインストール

 numpyまではインストールしていましたが参考書を読み進みそろそろ機械学習のライブラリをしようすることになりそうなのでpandasとscikit-learnをインストールしました。

intel系のマシンならあまり心配ではないのですが使用しているChromeBook(Detachable CM3)で使用されているCPUはARM系なのでこういう計算系のライブラリのインストールが心配でした。

ただ、結果からいうととくに問題なくインストール完了です。


pipのupgradeしろと警告メッセージが表示していますがpandasとしては1.3.3がインストールされました。


scikit-learnも1.20.3が問題なくインストール完了

これで安心して勉強できます。

Chromebook の Linux コンテナ (Crostini) のバックアップ

Linux(ベータ版)は PythonやVisualStudioなどインストールして学習にかなり重宝しています。

さらに色々とPythonのライブラリのインストールもするのでいったんバックアップすることにしました。


バックアップ方法を紹介されているサイトを参考に実施、作業はいたって簡単


設定メニューからデベロッパーから「バックアップと復元」を選択しバックアップボタンをクリック


保存先と保存ファイル名を選択して保存ボタンをクリックするだけ


まだたいしてインストールをしていないからかバックアップファイルは1.6G程度でおおよそ10分ぐらいでバックアップ完了

Chromebookのストレージサイズはけして多くはないので自宅のNASに退避したのち削除、思っていた以上に簡単でした。

Linux自体は起動したままの状態だったのでちょっと気になりましたがなんの問題もなくバックアップもできその後もターミナルを起動してみましたが普通に使用できました。




2021年9月13日月曜日

Windows10+IE11でSSL3.0の有効化して自己証明書サイトへのhttpsアクセス

クローズな環境でWindows10+IE11からSSL3.0でのhttps通信必要になりIE11の詳細設定でSSL3.0の使用にチェックしたにも関わらず接続エラー・・・。

色々調べてみた所レジストリを変更することで接続出来ることが判明

HKLM SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0 \Clientに"Enabled" という名前の dword レジストリ値に1を設定

情報はMicrosoftのトランスポート層セキュリティ (TLS) のレジストリ設定を参考にしました 。

説明の中に"DisabledByDefault"と言う項目もあり"Enabled"との違いが気になっていたのですが"DisabledByDefault"はアプリケーションがSSLを使用する際にバージョンを指定しなかった場合に使用される規定値であり"DisabledByDefault"の値が0でも該当のバージョンが有効であればアプリケーションが明示的に該当のバージョンを指定すれば使用可能らしい。

ただOSの規定値が無効だったり"Enabled"という名前のレジストリ値が0の場合はアプリケーションから使用不可ということ。(IE11の詳細設定でSSL3.0にチェックを入れても使用できない)

実際レジストリを確認した時にSSL 3.0についてのレジストリ値がなくOSの規定値が気になったのですがTLS/SSL のプロトコル (Schannel SSP)に記載がありWindows 10、バージョン1607、Windows Server 2016 StandardからSSL3.0は無効のようです。

補足として自己証明書を使用したhttps通信の場合、上記設定を有効にしてもセキュリティ上アクセス出来ずアクセスサイトを信頼済サイトに登録する必要もありました。(詳細設定で証明書の確認をしないようにすれば登録は不要なのかも)


2021年8月9日月曜日

Linux(ベータ版)にpipとScipyのインストール

 数理最適化(scipy.optimize)をする必要があり数値解析パッケージ(Scipy)をインストールすることに。

参考にしたサイトではpipコマンドを使用しており今後のことも考えてまずはpipをインストール


Chormebook上のLinux(ベータ版)のPythonはpython3なのについ癖でpythonと入力としてしまいます。

scipy(1.7.1)が問題なくインストールされました。

2021年7月25日日曜日

Visual Studio CodeのJupyterでExpected expression Pylanceエラー

 Visual Studio CodeのJupyter上でmatplotlibを使用していたら突然動かなくなりました。

下部のエラー画面に”Expected expression Pylance”エラーが表示されていることに気がつき該当のエラー行を見てみるとmatplotlib のインタラクティブサポートを有効化するためのコマンドの行がエラーとのこと

%matplotlib inline ←該当のエラー行

今まで問題なく動作していたのに・・・Visual Studio Codeを再起動してみても改善せず原因不明。

ただ、作業中に拡張モジュールをバージョンアップをしたような・・・。

試しにエラー行をコメントアウトしてみるとエラーはなくなりました、グラフが表示しなくなると思いきや問題なく表示します。

もしかして不要になったのかな。

■発生したバージョン

Visual Studio Code:1.58.2

Jupyter:v2021.8.1054968649

Pylance:v2021.7.5

Python:v2021.7.1060902895

2021年7月17日土曜日

Visual Studio Codeバージョンアップ時のメッセージダイアログ(制限モード)

 Visual Studio Codeを起動するたびにバージョンアップの通知が表示するのでバージョンアップをしてしまうことに。

一度バージョンアップは経験済みでWindows版と違い自動アップデートはされないだしVisual Studio Codeを起動したままアップデートはできなかった(Chromebook上のLinux(ベータ版)上で起動している環境)


前回同様、Visual Studio Codeを終了した状態でターミナルなるからaptコマンドでアップデートをしてすんなり終了

いざ起動させてみると何やらメッセージダイアログが表示

とりあえず調べてみると制限モードを有効にするか聞かれている模様、詳細はこちらを参考にさせていただきましたが制限は不要なのでチェックを入れて"yes"を選択することで今まで通り問題なく使えました。


2021/7/17時点ではバージョンは1.58でした。


2021年7月3日土曜日

Error stating penguin container:51

 ChromebookのLinux(ベータ版)のターミナルを起動しようとしたら失敗


原因がわからずとりあえずChromeを再起動したら無事ターミナルは起動するようになったけれど調べてみるといがいにこの事象はでることがあるらしい。

その場合はターミナルのアイコンを右クリックしてLinuxを一度終了してターミナルをクリックすることでLinuxのコンテナを起動しなおせばいいらしい


croshに入ってターミナルを再起動する方法もあるらしい
chrome上でCtl+Alt+tでcroshに入る

リスト(list)でコンテナを確認
ターミナル(termina)を停止
ターミナルを起動

>vmc list
>vmc stop termina
>vmc start temina

シェルが表示されるのでexitで抜けてさらにexitでcroshを抜ける


2021年5月26日水曜日

matplotlibで日本語表示のためにIPAフォントをインストール

 Linux(ベータ版)を日本語化する際にデフォルトでNoto Sans CJK JP日本語フォントがインストールされていいたので日本語フォントは追加していませんでした。

しかし、パッケージでインストールしたmatplotlibはVer3.0.2のようでttcファイルに未対応(V3r3.1から対応したらしい)のようなので上記の日本語フォントが扱えないらしい。

Noto Sans CJK JPはttcファイル

仕方なくIPAフォントをインストールすることにしました。

■IPAフォントパッケージインストール

>sudo apt install fonts-ipaexfont

■インストールされたフォントの確認

 >fc-list | grep 'IPA'

(実行結果)
/usr/share/fonts/opentype/ipaexfont-gothic/ipaexg.ttf: IPAexゴシック,IPAexGothic:style=Regular
/usr/share/fonts/opentype/ipaexfont-mincho/ipaexm.ttf: IPAex明朝,IPAexMincho:style=Regular
/usr/share/fonts/truetype/fonts-japanese-mincho.ttf: IPAex明朝,IPAexMincho:style=Regular
/usr/share/fonts/truetype/fonts-japanese-gothic.ttf: IPAexゴシック,IPAexGothic:style=Regular

ttfファイルがインストールされました。

■Jypyter Notebookでのテストコード

import matplotlib.pyplot as plt
from matplotlib import rcParams
rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif']  = ['IPAexGothic']
x = [1,2,3,4,5]
y=[2,4,6,8,10]
plt.plot(x,y)
plt.title('日本語タイトル')
plt.show()

無事日本語タイトルが表示できました。

2021年5月22日土曜日

matplotlibインストールでThe headers or library files could not be found for zlibエラー

 Chromebook(ASUS Chromebook Detachable CM3)上のLinux(ベータ版)の環境も整ってきたのでVisual Studio Codeの拡張機能Jupiter Notebookちょっと使用してみようとグラフ表示のサンプルコードを書いてみるとmatplotlibモジュールがないとエラー表示。

そんな気はしたのでインストールしようとすると関連モジュールのPillow-8.2でインストールエラー。

The headers or library files could not be found for zlib,

 a required dependency when compiling Pillow from source.

このメッセージは以前にも違う環境で発生したことが・・・あらためて調べてみると色々なケースがあるようで深みにはまりそうな予感。

公式サイトのインストール方法を読んでいるとdebianの場合、python3-pilとpython3-pil.imagetkのdebパッケージにPillowが含まれているような記載がありインストールしてみると5.4.1がインストールされました。

再度matplotlibのインストールをトライするとエラーは改善せず・・・インストールログをみているとPillowは6.2以上を使用するようでパッケージに含まれている5.4.1では古いらしい。(matplotlibは3.4.2をインストールしようとしていました)

もしかしてmatplotlibのdebパッケージがあるのではないかと調べて見るとやっぱりありました、バージョンは3.0.2とちょっと古いのですが勉強程度に使用する分ならきっと使えるのではないかと思うのでこれ以上深入りするのはやめました。

(2021/5/26)

matplotlibのTTCファイル対応は3.1からのようなので日本語表示させる場合はTTFファイルのインストールが必要そう



2021年5月21日金曜日

Visual Studio Code 1.56.0から1.56.2にアップデート

 Visual Studio Codeを使用していると左下のアイコンにマークが表示


どうやらアップデータが公開されたようです。Windows版であれば自動更新可能らしいのですがLinux版は手動更新が必要らしいです。


アップデート前のバージョン(1.56.0)を確認

上のアイコンをクリックしてみるとLinuxにインストールしてChromium(事前にインストールしていました)が起動しダウンロードサイトが表示

画面のリンクからdebファイルをダウンロードのリンクをクリック

Keepボタンをクリックしてダウンロードを継続


ダウンロードファイルはファイルアプリ側から参照可能なので新規インストールと同様にChromeOS側からダブルクリックしてインストールしてみると


エラーが発生・・・うーん。たまたまChromiumをインストールしていたのでダウンロードサイトを表示しましたが未インストール状態だったらどうなるのかな。ちなみにChromium上からダウンロードが完了したdebファイルのアイコンをクリックしてもインストールは開始されるもののエラーになりました。

とりあえずaptコマンドでインストールを試みてみることにしました。

なんとなくapt list --upgradeableでアップグレード可能なパッケージパッケージを確認してみるとちゃんとVisual Studio Codeが対象になっていました。

なので、sudo apt install codeで無事インストール完了

インストール後にバージョンを確認すると無事1.56.2にバージョンアップ完了、初めからコマンドにしておけばよかったです。


2021年5月19日水曜日

Visual Studio Codeのインストール

 無事日本語環境も整ったのでVisual Studio CodeをインストールしてPythonの開発環境を整えます。

PythonはLinux(データ版)には標準でインストールされているようです。

少し前はASUS Chromebook Detachable CM3に搭載されているCPUがARMベースMediaTekにVisual Studio Codeが対応していなかったようですが今はちゃんとサポートされているようで安心しました。


■パッケージのダウンロード

ダウンロードサイトからARM64版のdebパッケージをダウンロード

■インストール

ダウンロードしたdevファイルをChromeOSのファイルアプリでダブルクリック




LinuxアプリグループにVisual Studio Codeのアイコンが追加されます

■日本語化



左側メニューの拡張機能をクリックしてjapanをキーワードにして検索、
Japanese Language Pack for Visual Studio Codeを選択してクリックしインストールします。
Visual Studio Codeの再起動を求められるので再起動すると日本語表示になります。

■Python拡張機能

日本語化と同様にPython拡張機能をインストール

インストール自体はこれで完了、ChromeOS上からちゃんとLinuxにインストールしてくれるのは以外でした。

Visual Studio Codeのパッケージ名はcodeのようなのでターミナルからaptコマンドでインストールするならsudo apt install codeなのかな、その場合アイコンは作成されるのだろうか。。。

2021年5月13日木曜日

ChromebookのLinux(ベータ版)日本語環境(日本語入力)

Linux(ベータ版)も無事動作しているのでこの後インストールする予定のVisual Studio Codeのためにも日本語化(日本語入力)をできるようにしてみることに。

ざっと調べてみるとfcitxとMozcの組合せが多かったのでまずはこれで試してみました。

■タイムゾーンを確認

>timedatectl status


デフォルトで東京になっていることを確認

■ロケール

・ロケールパッケージ追加


日本のロケール情報がなさそうなのでパッケージを追加(※画像はパッケージを追加せずにロケール設定をした後にコマンドを実行したところ3行エラーが発生している)

>sudo apt install locales-all

・ロケール設定

>sudo localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"

>source /etc/default/locale

■フォント

参考サイトではIPAフォントをインストールする手順が多いようですがfc-listコマンドで確認してみるとGoogleがAdobeと共同開発したフォントファミリーのNoto Sansがインストールされてるようなのでとりあえず追加はしないでおきました。


fc-listコマンド結果


■Mozc日本語入力システム(IME)

・インストール

>sudo apt install fcitx-mozc

インプットメソッドフレームワークであるfcitxは既にインストール済(?)だったのかとくにインストールはしませんでした。

・環境設定

/etc/systemd/user/cros-garcon.service.d/cros-garcon-override.confに以下の行を追加

Environment="GTK_IM_MODULE=fcitx"

Environment="QT_IM_MODULE=fcitx"

Environment="XMODIFIERS=@im=fcitx"

・自動起動設定

使用しているウィンドウマネージャー(sommelier)の設定ファイル(?)に追加

>echo "/usr/bin/fcitx-autostart" >> ~/.sommelierrc


・再起動

シェルフのターミナルアイコンを右クリックしてLinux(ベータ版)を終了、再度ターミナルを起動

■fcitxの設定

fcitxの設定ツール起動

>fcitx-configtool

起動直後の画面

1行目のKeyboard - English(US)は削除(一行目を選択した状態で画面左下の"-"をクリック)してKeyboard - Japaneseを追加(左下の"+"をクリックしてJapaneseを選択)して1行目に移動させます
削除、追加、移動後の状態

・入力設定
日本語入力時にカーソルがある位置にリアルタイムで入力できるようにする設定、アドオンタブでAdvancedチェックボックスをオン


左下のAdvancedチェックボックスをオンにした状態

Fctix XIM Frontendを選択して”設定”ボタンかダブルクリック
”XIMでOn The Spotスタイルを使う(起動中は変更できません)”チェックボックスをオン
OKボタンをクリック

・補足1

fcitx-configtoolを起動した際に以下のエラーメッセージが表示
----------------------------------- エラーメッセージここから
hoto@penguin:~$ fcitx-configtool

(process:612): Gtk-WARNING **: 17:36:30.344: Locale not supported by C library.
        Using the fallback 'C' locale.
xkbcommon: ERROR: Key "<CAPS>" added to modifier map for multiple modifiers; Using Mod3, ignoring Lock
----------------------------------- ここまで

この時はロケールパッケージを追加しないでロケールを日本に設定したのが原因、起動はしたもののメニューは日本語表示せず

・補足2

----------------------------------- エラーメッセージはここから
xkbcommon: ERROR: Key "<CAPS>" added to modifier map for multiple modifiers; Using Mod3, ignoring Lock
----------------------------------- ここまで
CAPSキーが云々、CM3のキーボードは87日本語キーボードだけれどロケールでキーボードレイアウト設定をしていないのが原因かも、だた設定作業には支障なかったので今回は無視しました。

■動作確認

標準のターミナルからではLinux上の日本語入力が出来ないのでとりあえずGoogleが公開しているオープンソースブラウザchromiumをインストールして起動させた状態で日本語入力ができることを確認しました。


chromiumを起動してCtrl+Spaceで日本語入力に切り替わることを確認できまいた。

・補足

chromiumはターミナル上からインストールしましたがLinuxアプリにchromiumのアイコンが作成されていました。

>sudo apt install chromium 



日本語環境も無事整ったので次は開発環境