第一步 编译需要的op,成功
第二步就报错。。
这里插一句,用apt-get install 找不到某个packages,有可能是没更新apt,如下链接
https://www.linode.com/community/questions/3101/how-to-use-apt-get-to-install-aptitude
看看报错,
这个我试了超多办法。。但是都对我的问题不work,提供一些办法供大家参考
https://github.com/tensorflow/tensorflow/issues/4680
http://www.ishenping.com/ArtInfo/977434.html
这个Eigen就是个全是头文件的C++矩阵处理库
我看到有人说是pip过来的环境没有把include里的文件copy过来,还是直接git clone tensorflow的源码来编译比较好,你们可以试试
直到我搜到这篇文章
https://blog.youkuaiyun.com/u013834525/article/details/88832374
哈哈哈哈终于解决了我的问题,大概是Eigen的结构问题
然后我就按照这个方法创建两个软连接,成功work了!!!开心
然后接着报错。。。
就和我很疑惑为什么pip过来的tensorflow里面还有一个tensorflow一样,为什么这个eigen3在第三方库这个文件夹下也有一个
进入Tensor.h把#include<third_party/eigen3/unsupported/Eigen/CXX11/Tensor>改成#include<unsupported/Eigen/CXX11/Tensor>
ok,这个坑也算是解决了,Eigen的坑告一段落。。
我觉得很奇怪的是这样我相当于在对tensorflow的源码做编译,但是github里那个作者提供的办法是pip install tensorflow,不知道他怎么处理pip过来的tensorflow没有include里文件的问题?
https://github.com/tensorflow/tensorflow/issues/22007
解决办法如上,下载那个缺少的absl文件,然后放在搜索路径下
呵呵,又有新的报错
老办法,直接改include的路径
然额对于这种就行不通了,怎么办呢,还是改回来。。把虚拟环境里的third_party拷贝到/usr/include下面来,只有third_party里的Eigen才有FixedPoint
(弄到这里才想起来直接把虚拟环境的路径添加到编译路径下会更方便!!)
好像tensorflow里的训练文件都是要用.pb格式来进行读取的
搜了一下这玩意,好像在protobuf里