2016-06-28 34 views
9

Tôi đã thiết lập dự án C++ trong CLion sử dụng CMake. Tôi đang sử dụng các thư viện của bên thứ ba khác nhau và cũng muốn tích hợp Tensorflow.sử dụng lưu lượng trước khi biên dịch với cmake

Tôi đã thử bazel để biên dịch Tensorflow đến một thư viện chia sẻ libtensorflow.so mà loại làm việc tuy nhiên vẫn còn khá một vài phụ thuộc (ví dụ như một phiên bản protobuf hiện tại và một lần tôi làm điều đó có nhiều) mà Tôi phải sửa chữa.

Có cách nào để sử dụng kho lưu trữ tiêu chuẩn Tensorflow git và bằng cách nào đó liên kết các thư viện được biên dịch trước để sử dụng python không? Hoặc là có một cách thuận tiện?

Tensorflow trong Python hoạt động tốt cho tôi.

Trả lời

4

Tôi biết câu trả lời này là khá muộn, nhưng tôi đã gặp phải vấn đề chính xác của bạn và có thể giải quyết nó. Tôi đã tạo một kho lưu trữ here mô tả cách thực hiện chính xác những gì bạn muốn. Gist là:

  • Thêm quy tắc xây dựng vào kho chứa TensorFlow chứa tất cả các thành phần C++ bắt buộc.
  • Xây dựng thư viện được chia sẻ bằng Bazel và sao chép tất cả các tiêu đề sang /usr/local.
  • Cài đặt phiên bản cụ thể của Protobuf và Eigen (điều này được thực hiện tự động với tập lệnh) hoặc thêm chúng dưới dạng phụ thuộc bên ngoài.
  • Định cấu hình dự án CMake của bạn với các tệp đã cho.

Nếu bạn có bất kỳ câu hỏi hoặc vấn đề nào, vui lòng liên hệ với tôi.

+0

Tại sao chúng ta cần phải đặt các tệp trong/usr/local? Tôi có thể đặt các tệp của mình ở một nơi khác và thay vào đó Cmake tìm thấy chúng trực tiếp không? Cảm ơn bạn đã giúp đỡ với cmake – Pototo

Các vấn đề liên quan