返回介绍

安装适用于 C 的 TensorFlow

发布于 2025-01-22 23:08:25 字数 3301 浏览 0 评论 0 收藏 0

TensorFlow 在 c_api.h 中定义了一套 C 语言 API,用于 构建其它语言的封装 。这套 API 除了使用方便外,还将保持易用性与一致性。

支持的平台

本指南解释了如何安装 TensorFlow C 语言版。尽管本指南也可能适用于其它的安装环境,但我们仅测试(也仅确保)了本指南在以下环境机器中的适用性:

  • Linux, 64-bit, x86
  • macOS X, Version 10.12.6 (Sierra) 或更高版本

安装

请按照以下步骤安装 TensorFlow C 语言库并启用 TensorFlow C 语言版:

1.确定你是只在 CPU(s) 上运行 TensorFlow C 语言版,还是在 GPU(s) 的协助下运行。如果无法确定,请在以下指南中阅读“决定安装哪个 TensorFlow”一节:

  • 在 Ubuntu 上安装 TensorFlow
  • 在 macOS 中安装 TensorFlow

    2.通过调用下面的 shell 命令,下载并且解压 TensorFlow 的 C 语言库到 /usr/local/lib

      TF_TYPE="cpu" # Change to "gpu" for GPU support
      OS="linux" # Change to "darwin" for macOS
      TARGET_DIRECTORY="/usr/local"
      curl -L \
        "https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-${TF_TYPE}-${OS}-x86_64-1.8.0-rc1.tar.gz" |
        sudo tar -C $TARGET_DIRECTORY -xz
    

tar 命令会将 TensorFlow C 语言库解压到 TARGET_DIRECTORY 的子目录 lib 中。例如,指定 /usr/local 作为 TARGET_DIRECTORY ,那么 tar 就会将 TensorFlow C 语言库解压到 /usr/local/lib 中。

如果你希望将库解压到不同的目录中,请调整 TARGET_DIRECTORY

3. 在上一步中,如果你指定了一个系统目录(比如, /usr/local )作为 TARGET_DIRECTORY ,那么请运行 ldconfig 配置链接器。例如:

sudo ldconfig

如果你指定了一个非系统目录作为 TARGET_DIRECTORY (比如, ~/mydir ),那么你必须将你的解压目录(比如, ~/mydir/lib )添加到以下两个环境变量中。例如:

    export LIBRARY_PATH=$LIBRARY_PATH:~/mydir/lib # For both Linux and macOS X
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/mydir/lib # For Linux only
    export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:~/mydir/lib # For macOS X only

验证你的安装

在安装完成之后,新建文件,输入以下代码,文件命名为 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;
}

编译和运行

调用以下命令来编译 hello_tf.c

gcc hello_tf.c

运行生成的可执行文件,应该得到以下输出:

a.out 
Hello from TensorFlow C library version number

定位问题

如果程序编译失败,最有可能的错误是 gcc 找不到 TensorFlow C 语言库。解决这个问题的方法是为 gcc 指定 -I-L 参数。比如, TARGET_LIBRARY/usr/local 时,可以这样调用 gcc

gcc -I/usr/local/include -L/usr/local/lib hello_tf.c -ltensorflow

如果 a.out 执行失败,请思考下列问题::

  • 这个程序编译是否出错?
  • 是否按本指南第三步“ 安装 ”指定了正确的环境变量的目录?
  • 是否正确地 export 了环境变量?

如果你仍然在编译或者运行时看到了错误信息,请访问 StackOverflow 寻求解决方案。

如果您发现本页面存在错误或可以改进,请 点击此处 帮助我们改进。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文