abseil

tensorflow c++接口的编译安装与一些问题记录

橙三吉。 提交于 2021-01-13 21:01:17
参考 这篇文章 安装,依次安装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*

使用Bazel构建C/C++项目

早过忘川 提交于 2021-01-09 08:35:02
这是关于Bazel的第二篇blog,前一篇写了安装、配置相关的东西,这一篇则是4个逐步推进的例子,改编自官方demo;以及相应的概念、文档链接等。 [TOC] 前提 Linux(Ubuntu, etc)或Mac OSX系统,会点儿命令行(包括brew/apt) 装好了zsh和oh-my-zsh(用于 bazel build 等命令的补全) 装好了bazel; 学过C/C++; 用过make/cmake 最好会一点git bazel版本:目前我用0.21版本,最新版删过东西( https://docs.bazel.build/versions/0.21.0/be/workspace.html) 基本概念 WORKSPACE : 空文件;标识了项目根目录;只有一个 BUILD :WORKSPACE下的子目录里,如果放了一个名为 BUILD 的文件,则这个目录是一个 package ; BUILD 里写一些构建规则 (rules) cc_binary : C/C++ package 的最常用的构建规则 bazel的C/C++在线文档: https://docs.bazel.build/versions/master/be/c-cpp.html target 的概念:cmake中的target包括executable、library两种情况 rule 的概念:类似于cmake中