簡體   English   中英

使用帶有cmake的預編譯張量流

[英]use pre-compiled tensorflow with cmake

我在CLion中設置了一個使用CMake的c ++項目。 我正在使用各種第三方庫,並且還希望集成Tensorflow

我試過巴澤勒編譯Tensorflow到共享庫libtensorflow.so哪種工作但仍然有相當多的依賴關系(例如,以當前的protobuf版本,一旦我這樣做,有更多),我不得不修復。

有沒有辦法使用標准的Tensorflow git存儲庫並以某種方式鏈接為python使用而預先編譯的庫? 還是有另一種便捷的方法?

Python中的Tensorflow對我來說效果很好。

我知道這個答案已經很晚了,但是我遇到了您的確切問題並能夠解決。 我在這里創建了一個存儲庫,該存儲庫描述了如何准確地完成所需的操作。 要點是:

  • 向包含所有必需的C ++元素的TensorFlow存儲庫添加構建規則。
  • 使用Bazel構建共享庫,並將所有標頭復制到/usr/local
  • 安裝Protobuf和Eigen的特定版本(通過腳本自動完成)或將它們添加為外部依賴項。
  • 使用給定的文件配置CMake項目。

如果您有任何疑問或問題,請隨時與我聯系。

如果您使用的是MacOS,則使用自制軟件,CMake和pkg_config很容易。

首先使用brew獲得Tensorflow:

brew install libtensorflow

然后在CMakeLists.txt

cmake_minimum_required(VERSION 3.10)
project(tf-inference)

find_package(PkgConfig)
pkg_check_modules(TensorFlow REQUIRED tensorflow)

link_directories(${TensorFlow_LIBRARY_DIRS})
include_directories(${TensorFlow_INCLUDE_DIRS})
add_compile_definitions(${TensorFlow_CFLAGS_OTHER})

add_executable(tf-inference inference.cpp)
target_link_libraries(tf-inference ${TensorFlow_LIBRARIES})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM