Bazel 安装及遇到的问题
来源:互联网 发布:如何管理顾客数据 编辑:程序博客网 时间:2024/04/27 05:00
bazel支持的平台有Ubuntu Linux、Mac OS X、Windows等,本文基于Ubuntu14.04下的bazel,其它平台的安装参考官网安装教程。
Bazel安装
1.先安装Bazel的依赖
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get install openjdk-8-jdk openjdk-8-source
sudo apt-get install pkg-config zip g++ zlib1g-dev unzip
注意:如果你没有安装add-apt-repository命令,需要执行sudo apt-get install software-properties-common命令
2.下载安装文件,然后再改变可执行权限
https://github.com/bazelbuild/bazel/releases
如:https://github.com/bazelbuild/bazel/releases/download/0.5.3/bazel-0.5.3-installer-linux-x86_64.sh
下载好bazel安装文件后,执行如下步骤:
(1)复制到虚拟机中, 终端然后切换到.sh文件存放的路径,文件添加可执行权限:
$ chmod +x bazel-0.5.3-installer-linux-x86_64.sh
(2)然后执行该文件:
$ ./bazel-0.5.3-installer-linux-x86_64.sh --user
注意:--user选项表示bazel安装到HOME/bin目录下,并设置.bazelrc的路径为HOME/.bazelrc。
(3)设置Bazel 环境变量
$ sudo gedit ~/.bashrc
在 ~/.bashrc文件的末尾添加
export PATH=/home/ckt/bin:$PATH
source ~/.bashrc
安装成功后如下图所示:
遇到的问题及解决方法
1.下载安装文件大小有问题,出错的文件只有8M
解决方法:重新下载安装文件,大小大约201M,https://github.com/bazelbuild/bazel/releases/download/0.5.3/bazel-0.5.3-installer-linux-x86_64.sh
2.编译tensorflow jar出问题
(1)编译目录出错
解决方法:在tensorflow源码根目录执行
(2)下载包出错
解决方法:翻墙
(3)WORKSPACE中的Android SDK未配置
解决方法:修改WORKSPACE文件:在/tensorflow目录下的WORKSPACE文件,找到如下一段代码,对应配置好你的sdk版本以及位置,还有ndk的版本和位置,并且去掉注释:
# Uncomment and update the paths in these entries to build the Android demo. android_sdk_repository( name = "androidsdk", api_level = 23, //设置成你安装sdk的最高版本,对应修改manifest.xml以及gradle的target # Ensure that you have the build_tools_version below installed in the # SDK manager as it updates periodically. build_tools_version = "25.0.2", # Replace with path to Android SDK on your system path = "/home/ckt/Android/Sdk", )
注意:
api_level需要设置成你本地sdk最高的版本,推荐23及以上,在android:build.gradle 以及AndroidManifest.xml也对应修改targetSdkVersion
3.编译tensorflow so库出问题,WORKSPACE中的Android NDK版本不对
其错误之一如下图:
解决方法:配置成android-ndk-r12b版本
# Android NDK r12b is recommended (higher may cause issues with Bazel) android_ndk_repository( name="androidndk", path="/home/ckt/projects/tools/android-ndk-r12b", # This needs to be 14 or higher to compile TensorFlow. # Please specify API level to >= 21 to build for 64-bit # archtectures or the Android NDK will automatically select biggest # API level that it supports without notice. # Note that the NDK version is not the API level. api_level=14)
注意:ndk的版本,推荐使用r12,否则bazel编译的时候会报错。
另外:编译完毕后,android_tensorflow_inference_java.jar和libtensorflow_inference.so的路径为:
/tensorflow/bazel-bin/tensorflow/contrib/android
- Bazel 安装及遇到的问题
- 安装Bazel
- Bazel安装
- JMeter的安装及遇到的问题
- 安装MySQL遇到的问题及解决
- 安装petshop遇到的问题及解决方案
- 安装SQLSERVER2000遇到的问题及解决
- 安装RMagick遇到的问题及解决办法
- pidgin安装遇到的问题及解决方法
- nagios安装遇到的问题及解决
- 安装archlinux遇到的问题及解决方法
- 安装天堂遇到的问题及解决方法
- 安装directshw遇到的问题及解决
- Thrift安装遇到的问题及解决方案
- jupyter安装及遇到的问题。
- 安装Apache遇到的问题及解决方法
- 安装CocoaPods遇到的问题及解决办法
- 安装gem5遇到的问题及解决方案
- js将json自动转html表格实例
- JavaScript HTML DOM 元素(节点)
- Android Studio利用Gradle删除没有使用到的资源和代码文件
- 分解时间序列(季节性数据)
- 数据结构之链表
- Bazel 安装及遇到的问题
- 位操作指令集
- 用电路做加法
- Effective Java
- Retrofit的简单封装
- codeforces894c(构造)
- TX1平台中,OpenCV无法正常调用板载相机的可能原因
- java 单例模式
- SpringBoot 读取Maven ProjectVersion