Windows:Tensorflow 1.14,2.1.0,2.2.0 C++接口编译为dll,包括lib,h文件

本文详细介绍了如何在Windows上使用Visual Studio和Bazel将Tensorflow 1.14、2.1.0、2.2.0编译为DLL和库文件,包括环境配置、源码下载、编译步骤、解决编译问题及VS项目设置。提供了编译好的库文件包下载链接和注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有任何地方有问题都欢迎交流

个人编译好的库文件包

下载地址
提取码:zzzz

准备

Step0:注意事项,出现错误再回来找

  1. 编译与训练版本需保持一致,每次变更完系统变量之后,重新运行一下python configure.py
  2. 网络状况一定要好,出现connect timed out / support error 多试几次,最好多试几遍
  3. 计算能力必须匹配,tensorflow需要根据目标产品部署显卡的计算能力进行特定版本的编译,或者编译全计算能力版本进行开发,但是dll文件较大
  4. 若想重命名lib,dll文件名称,需要先在tensorflow/tensorflow/build中找到相应代码并修改
  5. 若遇到max,min冲突错误,则在VS属性—C/C++—Preprocessor—中添加NOMINMAX
  6. 最好一个版本TF对应一套lib,include,dll,包括CPU / GPU版本对应好
  7. tensorflow多模型同时推理测试,限制显存增长即可解决
  8. 一直connect error
    (1)尝试清理缓存C/usr/_bazel_user文件夹
    (2)连接外网

Step1:写在前面,导出符号BUG提前修复

  1. 实际使用dll的时候无法解析的外部符号错误:

(1)r2.3.0 / r1.15.0版本(待完善)

(2)r1.14 / r2.1.0 / r2.2.0版本

找到文件tensorflow\tensorflow\tools\def_file_filter\def_file_filter.py.tpl记事本打开
找到类似于如下格式的代码段,并追加如下两行代码
    def_fp.write("\t ?NewSession@tensorflow@@YA?AVStatus@1@AEBUSessionOptions@1@PEAPEAVSession@1@@Z\n")
    def_fp.write(
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值