CentOS6.9にTensorflowをインストールするのに非常に問題があります。
Anaconda3を使用してCentOSにTensorflowをインストールする手順に従おうとしました(当然、Python 3、Python 3.5.3))。ほとんどのパッケージがインストールされています。 Tensorflowを除いて正しく。一部のパッケージをインストールするには、GCCバージョンを4.4.7から6.3.0にアップグレードする必要がありましたが、Python画面に4.4.7と表示されます。
とにかく、私は指示に従ってTensorflowをインストールしましたが、このメッセージImportError: /lib64/libc.so.6: version 'GLIBC_2.14' not found (required by /home/k/anaconda3/envs/h/lib/python3.5/site-packages/tensorflow/python/_pywrap_tensorflow.so)
をスローするため、使用できませんでした。
そこで、GLIBCを2.14よりも新しいものにアップグレードしようとしたので、binutils 2.20は新しいGLIBCファイルの1つの構成を実行しないため、binutilsを2.25にアップグレードしました。しかし、古いLinuxバージョンであるGLIBCの構成中に別の問題が発生しました。 Linux 2.6を使用している場合は、Linux3.2.0が必要でした。
これが私の制約です。
これらは私が皆に尋ねたい質問です:
どうやらCUDA8.0は5.3.1以降のGCCバージョンをサポートしていないので、GCCバージョンを6.3.0から5.0から5.2の間のどこかに変更したいと思います。 _gcc --version
_と入力すると、GCCバージョン6.3.0が表示されますが、python 3に入ると、[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
が表示されます。どうすればよいですか。それについて?
プラットフォームでTensorflowを実行するように、GLIBCをアップグレードしたいと思います。私が超える必要のあるGLIBCバージョンはGLIBC_2.14だと思いますが、それでTensorflowを実行するのに十分かどうかはわかりません。サーバーでTensorflowを実行できるように、GLIBCのアップグレードを手伝ってください。
上記のタスクを実行するには、どのbinutilパッケージが必要ですか? devtools-4-binutilsをダウンロードして最新のbinutilsパッケージを入手しましたが、最新のパッケージがLinux2.6バージョンと同期していない可能性があります。
このいずれも機能しない場合は、GCCを工場出荷時のバージョン4.4.7にリセットし、binutilsを2.20にリセットする方法を教えてください。マシンに適用したすべての変更を元に戻すことができれば、GCCバージョン<5.3.1をインストールして、Tensorflowインストール用に新しいGLIBCを構成できると思います。
CentOS 6で機能させるには、tensorflow pipパッケージをソースから再構築する必要がありました。これは、デフォルトのpipパッケージにいくつかの基本的な問題があり、CentOS6用にどのglibcを使用したかが原因です。これが私が作ったメモです。 (これは1か月前に行ったことに注意してください)
bazel-4.5-dist.Zipをダウンロードし、次の手順に従ってインストールします。2017-09-04以降、新しいバージョンのbazelは機能しません。
~$ cd
~$ wget https://github.com/bazelbuild/bazel/releases/download/0.4.5/bazel-0.4.5-dist.Zip
~$ cd /usr/src
~$ mkdir bazel-0.4.5-dist.Zip
~$ cd bazel-0.4.5-dist
~# mv ~/bazel-0.4.5-dist.Zip ./
~# unzip bazel-0.4.5-dist.Zip
~# ./compile.sh
〜/ .bashrcを変更して、devtoolset-6ではなくdevtoolset-2をアクティブにします。 Tensorflowは新しいgccではビルドされず、gcc4までしかビルドされません
〜/ .bashrcで
source /opt/rh/devtoolset-2/enable
#source /opt/rh/devtoolset-6/enable
Tensorflowを/ usr/srcに複製します
~$ cd /usr/src
~# git clone https://github.com/tensorflow/tensorflow
テンソルフローを構成する
~$ cd tensorflow
~# ./configure
CUDAを除くすべてのサポートオプションで「いいえ」を選択します。他のすべてはデフォルトである必要があります
/ usr/src/tensorflow/third_party/gpus/crosstoolに移動し、CROSSTOOL_clang.tplとCROSSTOOL_nvcc.tplを変更して、「toolchain」というラベルの付いたセクションに次の行を追加します。
linker_flag : "-B/opt/rh/devtoolset-2/root/usr/bin"
テンソルフローを構築する
~$ cd /usr/src/tensorflow
~# bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
Pipパッケージを作成する
~# bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
カスタムpipパッケージをインストールする
~# Sudo pip install /tmp/tensorflow_pkg/tensorflow-1.3.0-cp34-cp34m-linux_x86_64.whl