Windows从源码构建tensorflow(离线编译)

由一开始的在线编译,到后面的离线编译,一路踩坑无数,历经整整6个半小时,终于编译成功!在此记录一下参考过的文章,有时间整理一下踩坑记录。

一、环境配置

在tensorflow官网上有版本对应关系

win10

bazel 3.1.0

msys2

tensorflow2.3.0

python3.5-3.8

MSVC2019

protobuf3.9.2 //protobuf的版本貌似非常重要,在tensorflow/tensorflow/workspace.bzl文件中可以查找到对应的版本

cuda10.1

cudnn7.6.5

VS2019 //编译过程中好像因为VS版本问题报过错,查找VS的MSVC版本,在报错文件中会有要求

二、编译前的准备工作,包括下载安装软件,配置环境变量,设置虚拟环境等

三、开始编译

bash 复制代码
bazel build --config=opt --config=cuda //tensorflow:tensorflow_cc.dll --local_ram_resources=200 --local_cpu_resources=10

四、编译报错处理

C++ compilation of rule '//tensorflow/core/kernels:XXX' failed

在windows环境下离线编译tensorflow2.2.0的C++动态链接库

Windows10 Bazel 编译 Tensorflow 2 C++ dll 和 lib 文件

Windows编译Tensorflow2.2.0 C++ dll (CPU bazel)

五、在VS上测试

上面的步骤完成后, 在 G:\tensorflow_c++_2.3(在你放源码的地方) 下的 bazel_bin 中会有相应的 include 文件夹 , tensorflow_cc.dll 和 tensorflow_cc.lib 文件, 把它们复制出来放到你的程序里就可以了.


Window下搭建Tensorflow的C++环境

相关推荐
weixin_468466851 小时前
从“看懂”到“做到”:视觉-语言-动作模型如何让机器人真正执行指令
人工智能·ai·机器人·大语言模型·前沿科技
朋友圈自动点赞工具1 小时前
科学AI插件化:从蛋白质结构到古籍修复
人工智能
龙粤GEO2 小时前
实体Entity在GEO中代表什么含义
人工智能
剑雨巍巍3 小时前
AI Agent面试之基础概念
人工智能
微帧Visionular3 小时前
AI视频单帧清晰,播放时却闪烁,原因是什么?
人工智能·深度学习·音视频
武子康3 小时前
MultiNet6 空闲崩溃:`EXCVADDR=0x8` 后又出现 `CORRUPT HEAP`
人工智能·后端·agent
云智慧AIOps社区3 小时前
智能巡检机器人应用场景解析:机房巡检、园区安防、管廊巡视与展厅导览
人工智能·机器人·具身智能·智能巡检机器人·企业级智能巡检机器人·机房巡检机器人·导览机器人
EnCi Zheng4 小时前
Agent 如何进行工具调用:从一次 Function Calling 到生产级工具编排的完整链路
大数据·人工智能·agent·ai编程·工具调用
赛博守夜人4 小时前
AI安全攻防与治理之十四:AI 安全测试不能脱离传统安全,Web、API、移动端与模型攻击面的组合拳
前端·人工智能·安全
lovingsoft4 小时前
AI 时代未来软件形态趋势:从固定功能应用,走向意图驱动、智能体原生的柔性系统-浅析
人工智能