verwende einen vorkompilierten Tensorflow mit cmake

9

Ich habe ein C ++ - Projekt in CLion eingerichtet, das CMake verwendet. Ich verwende verschiedene 3rd-Party-Bibliotheken und möchte auch Tensorflow integrieren.

Ich habe bazel ausprobiert, um Tensorflow in eine gemeinsam genutzte Bibliothek zu kompilieren. libtensorflow.so was funktioniert hat, aber es gibt immer noch einige Abhängigkeiten (zB zu einem aktuellen Protobuf Version und sobald ich das tue, gibt es mehr), die ich reparieren müsste.

Gibt es eine Möglichkeit, das standardmäßige Tensorflow git-Repository zu verwenden und die Bibliotheken, die für die Python-Verwendung vorkompiliert sind, irgendwie zu verknüpfen? Oder gibt es einen anderen bequemen Weg?

Tensorflow in Python funktioniert gut für mich.

    
Sebastian Langer 28.06.2016, 12:58
quelle

1 Antwort

4

Ich bin mir bewusst, dass diese Antwort ziemlich spät ist, aber ich stieß auf Ihr genaues Problem und konnte es lösen. Ich habe hier ein Repository erstellt, in dem beschrieben wird, wie Sie genau das erreichen, was Sie möchten. Das Wesentliche ist:

  • Fügen Sie dem TensorFlow-Repository eine Erstellungsregel hinzu, die alle erforderlichen C ++ - Elemente enthält.
  • Erstellen Sie die gemeinsam genutzte Bibliothek mit Bazel und kopieren Sie alle Header in /usr/local .
  • Installieren Sie spezifische Versionen von Protobuf und Eigen (dies wird automatisch mit Skripten gemacht) oder fügen Sie sie als externe Abhängigkeiten hinzu.
  • Konfigurieren Sie Ihr CMake-Projekt mit den angegebenen Dateien.

Wenn Sie irgendwelche Fragen oder Probleme haben, zögern Sie nicht, mich zu kontaktieren.

    
cjweeks 01.08.2016 16:02
quelle

Tags und Links