TensorFlow 2 のビルドとインストール(ソースコードを使用)(Ubuntu 上)
前準備
Ubuntu のシステム更新
端末を開き,次のコマンドを実行する.
# パッケージリストの情報を更新
sudo apt update
# インストール済みのパッケージを更新(依存関係の変更も反映)
sudo apt -y full-upgrade
カーネルなどが更新された場合は再起動する.
sudo shutdown -r now
Git, cmake, curl, wget, p7zip-full のインストール(Ubuntu 上)
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install git cmake cmake-curses-gui cmake-gui curl wget p7zip-full
C/C++ コンパイラと Make とビルドツールのインストール
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install build-essential gcc g++ make libtool texinfo dpkg-dev pkg-config
Clang のインストール
TensorFlow 2.13 以降は,既定のコンパイラが Clang である.TensorFlow 2.19 から 2.21 では Clang 18 が動作確認済みの構成である.
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install clang-18 llvm-18
clang-18 --version
Python3 開発用ファイル,pip, venv のインストール(Ubuntu 上)
端末で,次のコマンドを実行する.
# パッケージリストの情報を更新
sudo apt update
sudo apt -y install python3-dev python3-pip python3-setuptools python3-venv
Bazel のインストール
TensorFlow 2 のビルドには,ソースコードの .bazelversion ファイルで指定されたバージョンの Bazel が必要である.Bazelisk を bazel という名前で PATH に置くと,必要なバージョンの Bazel が自動的にダウンロードされて使用される.
Bazel のインストール: 別ページ »で説明
TensorFlow 2 のビルドとインストール
- ソースコードの取得と設定
端末で,次のコマンドを実行する.
./configureは,Python の場所や CUDA の使用の有無,使用するコンパイラなどを対話的に問い合わせる.cd /tmp rm -rf tensorflow git clone https://github.com/tensorflow/tensorflow.git cd tensorflow ./configure特定のバージョンをビルドする場合は,
git cloneの後にリリースブランチに切り替える.git checkout r2.20 - ビルド用の Python 仮想環境の作成と,ビルドに必要な Python パッケージのインストール
Ubuntu 23.04 以降のシステム Python では,pip による直接のインストールが制限されている(PEP 668)ため,仮想環境を用いる.
端末で,次のコマンドを実行する.
python3 -m venv ${HOME}/tfbuild source ${HOME}/tfbuild/bin/activate pip install -U pip numpy wheel packaging requests - pip パッケージ(wheel ファイル)のビルド
端末で,次のコマンドを実行する.終了までしばらく待つ.
CPU 版をビルインする場合
cd /tmp/tensorflow bazel build //tensorflow/tools/pip_package:wheel \ --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow_cpuGPU(NVIDIA CUDA)版をビルドする場合
cd /tmp/tensorflow bazel build //tensorflow/tools/pip_package:wheel \ --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow \ --config=cuda --config=cuda_wheelメモリ不足でビルドが失敗する場合は,Bazel が使用するメモリ量を制限する.
bazel build //tensorflow/tools/pip_package:wheel \ --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow_cpu \ --local_ram_resources=2048 - ビルドした wheel ファイルのインストール
wheel ファイルは bazel-bin/tensorflow/tools/pip_package/wheel_house/ に生成される.ファイル名は,バージョン番号,Python のバージョン,プラットフォームによって異なる.
端末で,次のコマンドを実行する.
ls bazel-bin/tensorflow/tools/pip_package/wheel_house/ pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-*.whl - バージョン確認
端末で,次のコマンドを実行する.バージョン番号が表示されればインストールは成功である.
python3 -c "import tensorflow as tf; print( tf.__version__ )"