tensorflow c++接口的編譯安裝與一些問題記錄


參考這篇文章安裝,依次安裝bazel,protocbuf,eigen3,然后下載tensorflow源碼,編譯c++ api,將編譯結果拷貝到搜索路徑

最后測試案例時遇到一些問題

(1)fatal error: absl/strings/string_view.h

解決方案,git clone https://github.com/abseil/abseil-cpp,然后把該庫加到搜索目錄里面

(2)對‘tensorflow::SessionOptions::SessionOptions()’未定義的引用

找不到正確的libtensorflow_cc.so,添加動態鏈接庫路徑

(3)tensorflow::status::tostring[abi:cxx11]() const

解決方案,編譯選項設置-D_GLIBCXX_USE_CXX11_ABI=0

最終測試代碼

 1 #include <tensorflow/core/platform/env.h>
 2 #include <tensorflow/core/public/session.h>
 3 
 4 #include <iostream>
 5 
 6 using namespace std;
 7 using namespace tensorflow;
 8 
 9 int main()
10 {
11     Session* session;
12     Status status = NewSession(SessionOptions(), &session);
13     if (!status.ok()) {
14         cout << status.ToString() << "\n";
15         return 1;
16     }
17     cout << "Session successfully created.\n";
18 }

編譯代碼

g++ -g -D_GLIBCXX_USE_CXX11_ABI=0 test_tf.cpp -o tfcpp_demo -I /usr/include/eigen3 -I /usr/local/include/tf  -L/usr/local/lib/ `pkg-config --cflags --libs protobuf`  -ltensorflow_cc  -ltensorflow_framework

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM