Windows10のUbuntuにTensorFlow for Cをインストールしたときの方法について
UbuntuのバージョンはUbuntu 20.04 LTS,TesnsorFlowのバージョンは最新の2.4.0
参考にしたのは以下の公式サイト
それではいってみよう
インストール方法の説明
STEP1
TensorFlow for C のインストールにアクセスする
https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-2.4.0.tar.gz
をクリックしてダウンロードする
STEP2
Ubuntuのホームディレクトリにlibtensorflow-cpu-linux-x86_64-2.4.0.tar.gz
をコピーする
絶対パスは以下のとおり
C:\Users\ユーザー名\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home\
≫WSLのホームディレクトリの場所@2019 - Qiita
STEP3
ホームディレクトリの管理者をrootから自分に変更する
:~$ cd ..
:/home$ ls -lXhFv --group-directories-first
total 0
drwxr-xr-x 1 root root 512 Jun 19 15:42 mtkbirdman/
:/home$ sudo chown -R $USER:$USER mtkbirdman/
:/home$ ls -lXhFv --group-directories-first
total 0
drwxr-xr-x 1 mtkbirdman mtkbirdman 512 Jun 19 15:42 mtkbirdman/
このステップはいらない人もいるかも
STEP4
.tar.gzを~/TensorFlow
に解凍する
:/home$ cd
:~$ mkdir TensorFlow
:~$ ls -lXhFv --group-directories-first
total 627M
drwx------ 1 mtkbirdman mtkbirdman 512 Aug 6 2020 OpenFOAM/
drwxr-xr-x 1 mtkbirdman mtkbirdman 512 Jun 19 15:44 TensorFlow/
-rwx------ 1 mtkbirdman mtkbirdman 527M Jul 11 2020 OpenFOAM-v2006-windows10.tgz*
-rwx------ 1 mtkbirdman mtkbirdman 30M Jul 10 2020 gmsh-4.6.0-Windows64.zip*
-rwx------ 1 mtkbirdman mtkbirdman 71M Jun 19 14:54 libtensorflow-cpu-linux-x86_64-2.4.0.tar.gz*
:~$ tar -C ./TensorFlow -xzf libtensorflow-cpu-linux-x86_64-2.4.0.tar.gz
:~$ ls -lXhFv --group-directories-first ./TensorFlow
total 472K
drwxr-xr-x 1 mtkbirdman mtkbirdman 512 Jan 1 2000 include/
drwxr-xr-x 1 mtkbirdman mtkbirdman 512 Jan 1 2000 lib/
-r-xr-xr-x 1 mtkbirdman mtkbirdman 12K Jan 1 2000 LICENSE*
-r-xr-xr-x 1 mtkbirdman mtkbirdman 444K Jan 1 2000 THIRD_PARTY_TF_C_LICENSES*
STEP5
.bashrcにリンカー環境変数を追加する
# .bashrc
# TensorFlow for C
export LIBRARY_PATH=$LIBRARY_PATH:~/TensorFlow/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/TensorFlow/lib
STEP6
作業ディレクトリに移動してサンプルプログラムをコンパイルし,実行可能ファイルを作成して実行する
:~/OpenFOAM/mtkbirdman-v2006$ cd $WM_PROJECT_USER_DIR/
:~/OpenFOAM/mtkbirdman-v2006$ touch hello_tf.c
:~/OpenFOAM/mtkbirdman-v2006$ vim hello_tf.c
:~/OpenFOAM/mtkbirdman-v2006$ gcc hello_tf.c -ltensorflow -o hello_tf
/usr/bin/ld: /home/mtkbirdman/TensorFlow/lib/libtensorflow.so: .dynsym local symbol at index 857 (>= sh_info of 2)
/usr/bin/ld: /home/mtkbirdman/TensorFlow/lib/libtensorflow.so: .dynsym local symbol at index 1944 (>= sh_info of 2)
/usr/bin/ld: /home/mtkbirdman/TensorFlow/lib/libtensorflow.so: .dynsym local symbol at index 2314 (>= sh_info of 2)
/usr/bin/ld: /home/mtkbirdman/TensorFlow/lib/libtensorflow.so: .dynsym local symbol at index 2502 (>= sh_info of 2)
/usr/bin/ld: /home/mtkbirdman/TensorFlow/lib/libtensorflow.so: .dynsym local symbol at index 2724 (>= sh_info of 2)
/usr/bin/ld: /home/mtkbirdman/TensorFlow/lib/libtensorflow.so: .dynsym local symbol at index 2725 (>= sh_info of 2)
:~/OpenFOAM/mtkbirdman-v2006$ ./hello_tf
Hello from TensorFlow C library version 2.4.0
実行可能ファイルhello_tf.cの中身はこれ
#include <stdio.h>
#include <tensorflow/c/c_api.h>
int main() {
printf("Hello from TensorFlow C library version %s\n", TF_Version());
return 0;
}
おわりに
TensorFlow for CをUbuntuにインストールすることができた
コメント