下载bazel
注意留意bazel与tensorflow的版本,文章使用的是tensorflowr9 和bazel12
1.先安装java
sudo apt-get install openjdk-8-jdk
2.安装bazel
sudo chmod +x sudo chmod +x bazel-0.12.0-installer-linux-x86_64.sh
./bazel-0.12.0-installer-linux-x86_64.sh --user
3.编译tensorflow
我使用的是c++库,所以只需要libtensorflow_cc.so
配置
./configure
全选no,后期可能会考虑cuda
编译
下面这一步好像没用,但是我也操作了
bazel build --config=opt --config=monolithic //tensorflow/tools/pip_package:build_pip_package
编译过程中,安装了numpy 和mock
sudo pip install numpy
sudo pip install mock
build之前需要先编译安装protobuf 和eigen(一个矩阵运算库)
bazel build --config=monolithic //tensorflow:libtensorflow_cc.so
如果不加–config=monolithic,编译出来的库会导致cv::imread() 为空,和opencv的jepg库冲突
添加了导入库的时候,只需要导入libtensorflow_cc.so,不再需要libtensorflow_framework.so
#同时导入libtensorflow_cc.so,libtensorflow_framework.so 还碰到过protobuf不一致的冲突问题