由于官方安装教程不清楚导致,以下是对官方安装教程的注释,注释部分为黑体加粗:
TensorFlow 提供了一个 C API,该 API 可用于为其他语言构建绑定。该 API 在 c_api.h 中定义,旨在实现简洁性和一致性,而不是便利性。
注意:TensorFlow 2 尚不支持 libtensorflow,预计会在未来版本中提供支持。
支持的平台
以下系统支持 C 版 TensorFlow:
Linux - 64 位,x86
macOS X - 版本 10.12.6 (Sierra) 或更高版本
Windows - 64 位 x86
设置
下载
TensorFlow C 库 网址
Linux
Linux(仅支持 CPU) https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-1.15.0.tar.gz
Linux(支持 GPU) https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-linux-x86_64-1.15.0.tar.gz
macOS
macOS(仅支持 CPU) https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-darwin-x86_64-1.15.0.tar.gz
Windows
Windows(仅支持 CPU) https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-windows-x86_64-1.15.0.zip
Windows(仅支持 GPU) https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-windows-x86_64-1.15.0.zip
解压缩
解压缩下载的归档文件,其中包含要添加到 C 程序中的头文件以及要与之关联的共享库。
在 Linux 和 macOS 上,您可能需要解压缩到 /usr/local/lib:
sudo tar -C /usr/local -xzf /usr/local/lib #这个路劲估计适合32位系统,本人用的64位centos7,编译官方示例代码后,运行一直会提示如下错误:
./hello_tf: error while loading shared libraries: libtensorflow.so.1: cannot open shared object file: No such file or directory
本人的系统根目录结构如下:
[root@localhost /]# ls
bin boot dev down etc ftpserver gaplugin.ini home lib lib64 locale media mnt opt proc project root run sbin screenagent_config.ini srv sys tmp usr var
把从libtensorflow-cpu-linux-x86_64-1.15.0.tar.gz解压出来的文件中lib目录下的文件全部放到系统根目录中lib64中程序能正常运行不会报上面错误
链接器
在 Linux/macOS 上,如果将 TensorFlow C 库解压缩到系统目录(例如 /usr/local),请使用 ldconfig 配置链接器:
sudo ldconfig
如果将 TensorFlow C 库解压缩到非系统目录(例如 ~/mydir),请配置链接器环境变量:
Linux
mac OS
export LIBRARY_PATH=
L
I
B
R
A
R
Y
P
A
T
H
:
/
m
y
d
i
r
/
l
i
b
e
x
p
o
r
t
L
D
L
I
B
R
A
R
Y
P
A
T
H
=
LIBRARY_PATH:~/mydir/lib export LD_LIBRARY_PATH=
LIBRARYPATH: /mydir/libexportLDLIBRARYPATH=LD_LIBRARY_PATH:~/mydir/lib
编译
示例程序
安装 TensorFlow C 库后,使用以下源代码创建一个示例程序 (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;
}
编译
编译示例程序以创建可执行文件,然后运行以下命令:
gcc hello_tf.c -ltensorflow -o hello_tf
./hello_tf
上述命令会输出:Hello from TensorFlow C library version number