Raspberry Pi Desktop (for PC and Mac) で基本ソフトウェア類のインストール
32ビット環境であるため,TensorFlow, PyTorch, RStudio, Docker, NVIDIA CUDA など,64ビット (x86_64) のみを対象とするソフトウェアはインストールできない.このページでは,32ビット環境で動作するものを扱う.
サイト内の関連 Web ページなど:
- インストール手順は、「Raspberry Pi Desktop (for PC and Mac) のインストール」のページで説明している.
- 「Raspberry Pi Desktop (for PC and Mac)のおすすめ初期設定」については,別のウェブページで説明している.
前準備
システムの更新を行っておく.
次のコマンドを実行.
# パッケージリストの情報を更新
sudo apt update
sudo apt -yV upgrade
sudo apt -yV dist-upgrade
sudo apt -yV autoremove
sudo apt autoclean
sudo shutdown -r now
rpi-update は実行しない.rpi-update は Raspberry Pi 本体のファームウェアとカーネルを更新するためのコマンドであり,PC および Mac 版では対象外である.
ここでインストールする基本ソフトウェア
- ツール: Git, CMake, cmake-gui, ImageMagick (画像), FFmpeg (ビデオデータ処理), p7zip (圧縮, 展開), Graphviz (グラフデータ構造可視化), net-tools, hwinfo (ハードウェア情報), GDAL (地理情報), Tesseract OCR (文字認識), jq (JSON整形), jsonlint (JSONチェッカ)
- アクセサリ: xpdf (PDF リーダ), shutter (画面キャプチャ), catfish (ファイル検索)
xpdf shutter catfish ※ PDF ファイルは texlive のドキュメント Africa.pdf を使用
- インターネット: FileZilla (ファイル転送), Firefox ESR (Webブラウザ), Wireshark (ネットワーク), netcat (通信), AWS Command Line Interface (AWS), Remmina (リモート接続)
filezilla firefox wireshark netcat - エディタ: Emacs, mousepad, gedit
Emacs - グラフィックス,ペイント,画像: Blender (3次元), POV-Ray, MeshLab, Inkscape, GIMP, Pinta, CloudCompare
Blender MeshLab Inkscape GIMP pinta ※ jpgファイルは OpenCV に付属の licenseplate_motion.jpg を使用
- 地理情報: QGIS
QGIS - ビデオ: VLC media player (メディア), OpenShot
Openshot - データベース管理システム: SQLite 3, DB Browser for SQLite (sqlitebrowser), Redis
SQLite 3 sqlitebrowser - プログラミング,開発環境: Python 3 とそのパッケージ (NumPy, pandas, scikit-learn, OpenCV など), Java JDK, Apache Ant, Java 開発環境 BlueJ, Guava, Java 学習環境 Greenfoot, gcc, g++, gdb, R システム, R パッケージ, GNU Octave 及び関連パッケージ, Node.js, npm, Android SDK
- ライブラリ: OpenBLAS (演算), OpenCV (コンピュータビジョン), OpenNI2, libPCL, Guava, Dlib
- 設計: FreeCAD
- ゲームフレームワーク,ゲームエンジン: Panda3D, Pygame, cocos2d
Python の仮想環境を整える
システムの Python (Python 3.9) を直接変更すると,OS の付属ソフトウェアに影響が出る場合がある.そのため,venv による隔離された Python 環境を作って使う.venv は Python 3 に標準で付属する仕組みである.
- Python 3 と関連ツールのインストール
# パッケージリストの情報を更新 sudo apt update sudo apt -y install python3 python3-dev python3-pip python3-venv build-essential python3 -V - venv による Python 3 環境の作成
python3 -m venv $HOME/venv/py39 ls $HOME/venv/py39 - 作成した Python 3 環境の有効化と確認
有効化は,端末を開くたびに行う.
source $HOME/venv/py39/bin/activate python -V python -m pip install --upgrade pip setuptools wheel pip list - 32ビット (i686) 環境では,配布されているビルド済みパッケージ (wheel) が用意されていない場合が多い.その場合はソースコードからのビルドが行われるため,インストールに時間がかかる.
TensorFlow, PyTorch について
TensorFlow と PyTorch が公式に配布しているパッケージは 64ビット (x86_64) 版のみである.32ビットの Raspberry Pi Desktop (for PC and Mac) では,pip でのインストールはできない.ソースコードからのビルドも,32ビット Linux は公式のサポート対象外である.
これらを使う場合の選択肢は次の通りである.
- 64ビットの Debian, Ubuntu などをインストールした PC で実行する
- Google Colaboratory などのクラウド環境で実行する
- Raspberry Pi 本体 (64ビット版 Raspberry Pi OS) で実行する
なお,Keras は TensorFlow に同梱されているため,TensorFlow をインストールすれば別途インストールする必要はない. また,Chainer は 2019年12月に開発元が PyTorch への移行を発表しており,新規開発では PyTorch を使う.
基本ソフトウェアのインストール手順
ソースコードからのビルドに有用なソフトウェアのインストール
OpenCV などのビルドに必要となるツールやライブラリをインストール
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install build-essential gcc g++ make libtool texinfo dpkg-dev pkg-config python3-dev python3-pip python3-numpy
sudo apt -y install git make cmake cmake-curses-gui autoconf automake flex bison clang binutils swig curl
sudo apt -y install subversion ccache
sudo apt -y install zip unzip
sudo apt -y install libopenblas-dev liblapack-dev libtbb-dev gfortran
sudo apt -y install libxi-dev libsndfile1-dev libopenexr-dev libalut-dev libsdl2-dev libavdevice-dev libavformat-dev libavutil-dev libavcodec-dev libswscale-dev libx264-dev libxvidcore-dev libmp3lame-dev libspnav-dev libglu1-mesa-dev libv4l-dev
sudo apt -y install libbz2-dev libsqlite3-dev libssl-dev libreadline-dev libpng-dev libtiff-dev libjpeg62-turbo-dev zlib1g-dev libx11-dev libgl1-mesa-dev libxrandr-dev libxxf86dga-dev libxcursor-dev libfreetype6-dev libvorbis-dev libeigen3-dev libopenal-dev libode-dev libbullet-dev
sudo apt -y install libgtk-3-dev libatlas-base-dev
プログラミング,開発環境
- Python 3 環境と,python パッケージ
システム全体で使うパッケージは apt で,仮想環境の中だけで使うパッケージは pip でインストールする.
# パッケージリストの情報を更新 sudo apt update sudo apt -y install idle-python3.9 ipython3 python3-ipykernel jupyter jupyter-notebook sudo apt -y install python3-numpy python3-scipy python3-pandas python3-matplotlib python3-seaborn python3-sympy sudo apt -y install python3-sklearn python3-sklearn-lib python3-skimage python3-h5py python3-yaml python3-six python3-psutil sudo apt -y install python3-django python3-flask python3-redis python3-msgpack python3-protobuf sudo apt -y install python3-gdal python3-geopandas python3-pyproj python3-overpy sudo apt -y install python3-pydot python3-pygraphviz python3-pygame python3-opencv source $HOME/venv/py39/bin/activate pip install --upgrade pip setuptools wheel pip install --upgrade cython pip install --upgrade pillow pip install --upgrade altair pip install --upgrade gensim pip install --upgrade folium pip install --upgrade exifread pip install --upgrade haversine pip install --upgrade utm pip install --upgrade imutils pip install --upgrade cocos2d pyglet - Python 3 環境に Spyder のインストール
# パッケージリストの情報を更新 sudo apt update sudo apt -y install python3-qtpy python3-spyder spyder - Java JDK, Apache Ant, Guava, Java 開発環境 BlueJ, Java 学習環境 Greenfoot
Debian 11 (bullseye) の標準リポジトリには BlueJ, Greenfoot, Eclipse のパッケージは含まれていない.BlueJ と Greenfoot は,公式サイトで配布されている deb パッケージを使う.Eclipse を使う場合は,Eclipse 公式サイトから入手する(32ビット Linux 版の配布は終了しているため,Visual Studio Code の代替として VSCodium などを検討する).
cd /tmp sudo apt -y install default-jdk sudo apt -y install ant sudo apt -y install libguava-java java -version
BlueJ は https://www.bluej.org/,Greenfoot は https://www.greenfoot.org から deb パッケージをダウンロードし,次のコマンドでインストールする(ファイル名は,ダウンロードしたものに読み替える).
cd $HOME/Downloads sudo apt -y install ./BlueJ-linux-version.deb sudo apt -y install ./Greenfoot-linux-version.deb - gcc, g++, gdb, GDB Enhanced Features (GEF), R システム, GNU Octave 及び関連パッケージ, Node.js, npm, Android SDK
R の統合開発環境である RStudio Desktop は,64ビット Linux のみの対応である.32ビット環境では,R のコンソールまたは Emacs (ESS) を使う.
cd /tmp sudo apt -y install build-essential g++ gdb # GDB Enhanced Features (GEF) wget -q -O- https://raw.githubusercontent.com/hugsy/gef/main/scripts/gef.sh | sh # sudo apt -y install r-base r-recommended sudo apt -y install octave octave-* sudo apt -y install nodejs npm node -v npm -v sudo apt -y install android-sdk
ツール
Git, CMake, cmake-gui, ImageMagick (画像), FFmpeg (ビデオデータ処理), p7zip (圧縮, 展開), Graphviz (グラフデータ構造可視化), net-tools, hwinfo (ハードウェア情報), GDAL (地理情報), Tesseract OCR (文字認識), jq (JSON整形), jsonlint (JSONチェッカ)
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install git
sudo apt -y install cmake
sudo apt -y install cmake-curses-gui
sudo apt -y install cmake-gui
sudo apt -y install imagemagick
sudo apt -y install ffmpeg
sudo apt -y install p7zip-full
sudo apt -y install graphviz graphviz-dev
sudo apt -y install net-tools
sudo apt -y install hwinfo
sudo apt -y install gdal-bin libgdal-dev
sudo apt -y install tesseract-ocr tesseract-ocr-jpn libtesseract-dev libleptonica-dev
sudo apt -y install jq
sudo apt -y install jsonlint
アクセサリ
xpdf (PDF リーダ), shutter (画面キャプチャ), catfish (ファイル検索)
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install xpdf
sudo apt -y install shutter
sudo apt -y install libgoo-canvas-perl
sudo apt -y install catfish
インターネット
FileZilla (ファイル転送), Firefox ESR (Webブラウザ), Wireshark (ネットワーク), netcat (通信), AWS Command Line Interface (AWS), Remmina (リモート接続)
AWS CLI の公式インストーラ (バージョン2) は 64ビット Linux のみの対応である.32ビット環境では,apt でインストールできるバージョン1を使う. RealVNC Viewer も,現行版は 64ビット Linux のみの対応である.VNC や RDP でのリモート接続には Remmina を使う.
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install filezilla
sudo apt -y install firefox-esr
sudo apt -y install firefox-esr-l10n-ja
sudo apt -y install wireshark
sudo apt -y install netcat-openbsd
sudo apt -y install awscli
sudo apt -y install remmina remmina-plugin-vnc remmina-plugin-rdp
エディタ
Emacs, mousepad, gedit
Visual Studio Code は 64ビット版のみが配布されている.32ビット環境では,Emacs, gedit などを使う.
# パッケージリストの情報を更新
sudo apt update
# emacs
sudo apt -y install emacs
# mousepad
sudo apt -y install mousepad
# gedit
sudo apt -y install gedit gedit-plugins
グラフィックス
Blender (3次元), POV-Ray, MeshLab, Inkscape, GIMP, Pinta, CloudCompare
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install blender
sudo apt -y install povray povray-examples
sudo apt -y install meshlab
sudo apt -y install inkscape
sudo apt -y install gimp
sudo apt -y install pinta
# CloudCompare
sudo apt -y install qtbase5-dev qtdeclarative5-dev qt5-default qttools5-dev libqt5widgets5 libqwt-qt5-dev libqt5svg5-dev
cd /tmp
rm -rf CloudCompare
git clone --recursive https://github.com/CloudCompare/CloudCompare.git
cd CloudCompare
rm -rf build
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release ..
cmake --build . -- -j$(nproc)
sudo make install
地図情報
QGIS , Debian GIS Data, Debian GIS OSM
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install qgis qgis-plugin-grass
# Debian GIS
sudo apt -y install gis-data gis-osm
ビデオ
VLC media player (メディア), OpenShot
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install vlc
sudo apt -y install openshot-qt
データベース
SQLite 3, DB Browser for SQLite (sqlitebrowser), Redis
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install sqlite3
sudo apt -y install sqlitebrowser
sudo apt -y install redis-server redis-tools
ライブラリ
OpenCV (コンピュータビジョン), OpenNI2, libPCL, Guava, Dlib
NVIDIA CUDA は,32ビット Linux のサポートが終了しているため,この環境では使用できない.
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install openni2-utils libopenni2-dev
sudo apt -y install libpcl-dev
sudo apt -y install libguava-java
# OpenCV (パッケージを使う場合)
sudo apt -y install python3-opencv libopencv-dev opencv-data
python3 -c "import cv2; print( cv2.__version__ )"
OpenCV を,contrib モジュール付きでソースコードからビルドする場合は次の手順による(時間がかかる).
source $HOME/venv/py39/bin/activate
pip install numpy
cd /tmp
rm -rf opencv opencv_contrib
git clone --depth 1 https://github.com/opencv/opencv.git
git clone --depth 1 https://github.com/opencv/opencv_contrib.git
cd opencv
rm -rf build
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=/tmp/opencv_contrib/modules \
-D OPENCV_GENERATE_PKGCONFIG=ON \
-D BUILD_opencv_python3=ON \
-D PYTHON3_EXECUTABLE=$HOME/venv/py39/bin/python \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D BUILD_EXAMPLES=ON ..
make -j$(nproc)
sudo make install
sudo /sbin/ldconfig
python -c "import cv2; print( cv2.__version__ )"
Dlib
source $HOME/venv/py39/bin/activate
sudo apt -y install build-essential cmake libopenblas-dev liblapack-dev libx11-dev
pip install --upgrade dlib
pip install --upgrade face_recognition
python -c "import dlib; print( dlib.__version__ )"
設計
FreeCAD
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install freecad
ゲームフレームワーク,ゲームエンジン
Panda3D, Pygame, cocos2d
source $HOME/venv/py39/bin/activate
pip install --upgrade panda3d
pip install --upgrade pygame
pip install --upgrade cocos2d
32ビット環境向けのビルド済みパッケージが提供されていない場合は,Panda3D 公式サイトの手順に従い,ソースコードからビルドする.
Docker について
Docker Engine が公式にサポートするのは 64ビットのアーキテクチャであり,32ビット (i386) の Raspberry Pi Desktop (for PC and Mac) はサポート対象外である.Docker を使う場合は,64ビットの Debian, Ubuntu などを使う.
R のパッケージを追加
R のパッケージのビルドに必要なライブラリをインストールした後,パッケージをインストールする.
cd /tmp
sudo apt -y install libxml2-dev libfftw3-dev libfreetype6-dev libnlopt-dev libcurl4-openssl-dev libssl-dev libudunits2-dev libgdal-dev libgeos-dev libproj-dev libgit2-dev default-jdk
sudo R CMD javareconf
インストール済みパッケージの更新
echo 'options(repos="https://cloud.r-project.org"); update.packages(checkBuilt=TRUE, ask=FALSE)' | sudo R --vanilla
CRAN のパッケージのインストール
cat <<'EOF' > /tmp/install_cran.r
options(repos="https://cloud.r-project.org")
pkgs <- c(
"abind", "boot", "car", "caTools", "changepoint", "chron", "cluster", "codetools",
"colorspace", "ctv", "data.table", "deldir", "devtools", "diagram", "dplyr",
"entropy", "Epi", "evd", "fastICA", "fields", "forecast", "foreign", "gdata",
"gdm", "ggplot2", "gmodels", "gridExtra", "gridSVG", "gstat", "Hmisc", "igraph",
"Imap", "insol", "jpeg", "KernSmooth", "knitr", "lattice", "leaps", "lmtest",
"lsa", "lubridate", "mapproj", "MASS", "Matrix", "mclust", "mgcv", "mmand",
"mnormt", "moments", "multcomp", "mvoutlier", "mvtnorm", "nlme", "party",
"pca3d", "pcaPP", "pixmap", "plyr", "png", "psych", "pvclust", "randomForest",
"raster", "RColorBrewer", "Rcmdr", "Rcpp", "reshape2", "rgl", "rJava", "rpart",
"RSQLite", "RWeka", "RWekajars", "sandwich", "scatterplot3d", "sf", "shapefiles",
"shiny", "sm", "som", "sp", "spatial", "spatstat", "spsurvey", "sqldf",
"stabledist", "stringdist", "stringr", "strucchange", "survival", "terra",
"timeSeries", "tm", "SnowballC", "topmodel", "tseries", "vcd", "WriteXLS",
"xlsx", "xlsxjars", "XML", "xts", "zoo"
)
install.packages(pkgs, clean=TRUE, INSTALL_opts=c("--no-docs", "--no-html"))
EOF
sudo R --vanilla < /tmp/install_cran.r
※ 地理空間データを扱う rgdal, rgeos, maptools は 2023年10月に開発が終了し,CRAN から削除された.後継の sf と terra を使う.
Bioconductor のパッケージのインストール
Bioconductor のインストールは,R 3.5 以降では BiocManager で行う.旧来の biocLite は廃止されている.
cat <<'EOF' > /tmp/install_bioc.r
options(repos="https://cloud.r-project.org")
install.packages("BiocManager", clean=TRUE, INSTALL_opts=c("--no-docs", "--no-html"))
BiocManager::install(c("EBImage", "qvalue", "Rgraphviz", "RBGL", "hypergraph"), ask=FALSE, update=FALSE)
EOF
sudo R --vanilla < /tmp/install_bioc.r
インストール後の更新
echo 'options(repos="https://cloud.r-project.org"); update.packages(checkBuilt=TRUE, ask=FALSE)' | sudo R --vanilla