windows下 使用bazel 编译tensorflow 1.12 dll tensorflow动态链接库编译

一.准备工作

注:操作系统为64bit

本文使用tensorflow dll 编译tensorflow,输出dll和lib。注意tensorflow dll 从官方tensorflow Fork来的,由meteorcloudy维护。

 

工程所需软件及测试源码下载链接

bazel: https://download.csdn.net/download/sinat_19758811/11225764

其他资料:https://download.csdn.net/download/sinat_19758811/11225766

 

1. tensorflow dll 源码下载:https://github.com/meteorcloudy/tensorflow.git

 

2. msys2安装http://www.msys2.org/(选择最新版下载(选择msys2-x86_64-*.exe),苯本人将其安装至C盘)

配置msys2:

  • 将目录C:\msys64 加入系统环境变量path
  • 打开C:\msys64中的mingw64.exe 输入

pacman -S patch, unzip, grep

 

3. bazel下载:bazel 0.22版本 https://github.com/bazelbuild/bazel/releases/download/0.22.0/bazel-0.22.0-windows-x86_64.exe

bazel配置:

将bazel-0.22.0-windows-x86_64.exe改名为 bazel.exe放入 C:\msys64中,并新建环境变量:BAZEL_SH,BAZEL_VC ,BAZEL_VS

 

二.编译

 

1. 运行配置文件configure.py

 

cd进入 tensorflow-tensorflow_dll文件夹中,

运行 python configure.py

回车即为选择默认

本文仅编译CPU,若编译GPU版本 按照提示配置好路径

 

2. bazel编译

 

下面的命令直接会编译dll和lib 以及需要的头文件

bazel build --config=opt //tensorflow/tools/lib_package:libtensorflow

 

可能遇到的错误:

ERROR: error loading package '': Encountered error while reading extension file 'swift/repositories.bzl': no such package '@build_bazel_rules_swift//swift':

 

解决方法:

打开tensorflow源码目录里的 WORKSPACE, 在49行后加入

 

http_archive(

name = "build_bazel_rules_swift",

strip_prefix = "rules_swift-0.6.0",

urls = ["https://github.com/bazelbuild/rules_swift/archive/0.6.0.tar.gz"],

)

如下图:

 

重新运行:

bazel build --config=opt //tensorflow/tools/lib_package:libtensorflow

 

3. 编译完成

编译完成后,可找到libtensorflow.tar.gz

 

tensorflow-tensorflow_dll\bazel-out\x64_windows-opt\bin\tensorflow\tools\lib_package

libtensorflow.tar.gz

 

解压后即可得到 include 和tensorflow.dll 和 tensorflow.lib

目录结构

 

三.测试

新建VS2015工程, 选择x64平台

注意配置工程的 包含目录、库目录、附加依赖项

#include <stdio.h> 
#include <tensorflow/c/c_api.h> 
int main() 
{ 
    printf("TF version is: %s\n", TF_Version()); 
    return 0; 
}

 

 

 

 

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值