![]() |
![]() |
![]() |
![]() |
TensorFlow 提供 C API,可用於為其他語言建立繫結。c_api.h
中定義了這個 API,其設計宗旨是簡潔和統一,而非便利性。
每晚 libtensorflow C 套件
libtensorflow 套件為每晚建構,並上傳至 GCS 以供所有支援的平台使用。這些套件會上傳至 libtensorflow-nightly GCS 儲存區,並依作業系統和建構日期建立索引。對於 MacOS 和 Linux 共用物件,有一個 指令碼 會重新命名 .so
檔案,並將版本號碼設為複製到包含成品目錄的目前日期。
支援的平台
下列系統支援 C 版 TensorFlow
- Linux,64 位元,x86
- macOS,10.12.6 (Sierra) 版或更高版本
- Windows,64 位元 x86
設定
下載並解壓縮
解壓縮下載的封存檔,其中包含要納入 C 程式的標頭檔,以及要連結的共用程式庫。
在 Linux 和 macOS 上,您可能會想要解壓縮到 /usr/local/lib
FILENAME=libtensorflow-cpu-linux-x86_64-2.15.0.tar.gz
wget -q --no-check-certificate https://storage.googleapis.com/tensorflow/libtensorflow/${FILENAME}
sudo tar -C /usr/local -xzf ${FILENAME}
連結器
在 Linux/macOS 上,如果您將 TensorFlow C 程式庫解壓縮到系統目錄 (例如 /usr/local
),請使用 ldconfig
設定連結器
sudo ldconfig /usr/local/lib
如果您將 TensorFlow C 程式庫解壓縮到非系統目錄 (例如 ~/mydir
),請設定連結器環境變數
Linux
export LIBRARY_PATH=$LIBRARY_PATH:~/mydir/lib export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/mydir/lib
macOS
export LIBRARY_PATH=$LIBRARY_PATH:~/mydir/lib export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:~/mydir/lib
建構
範例程式
安裝 TensorFlow C 程式庫後,使用下列原始碼 (hello_tf.c
) 建立範例程式
%%writefile 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;
}
Writing hello_tf.c
編譯
編譯範例程式以建立可執行檔,然後執行
gcc hello_tf.c -ltensorflow -o hello_tf
./hello_tf
Hello from TensorFlow C library version 2.15.0
如果程式無法建構,請確認 gcc
可以存取 TensorFlow C 程式庫。如果解壓縮到 /usr/local
,請明確將程式庫位置傳遞至編譯器
gcc -I/usr/local/include -L/usr/local/lib hello_tf.c -ltensorflow -o hello_tf
./hello_tf
Hello from TensorFlow C library version 2.15.0
從原始碼建構
TensorFlow 是開放原始碼。請參閱操作說明,從原始碼建構 TensorFlow 的 C 程式庫。