win10调用tensorflow C++API(无需编译)
内容简短,直接上操作!
Step1 文件下载
requirements:
对应版本的libtensorflow,下载链接:https://storage.googleapis.com/tensorflow
下载方式:在链接中找到对应版本的libtensorflow,如用于windows的1.13.1的libtensorflow-gpu
则补全链接https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-windows-x86_64-1.13.1.zip
Step2 配置
本配置在VS中进行。
Case1
下载后解压,版本较新的会包含.lib文件,则按照常规的配置头文件目录(Include Directories)、库文件目录(Library Directories)和链接器输入(Linker->Input)
C++代码:
需要vcruntime140_1.dll,可在此链接搜索下载https://www.dll-files.com/
#include<stdio.h>
#include<tensorflow\c\c_api.h>
#include<filesystem>
int main() {
printf("Hello from TensorFlow C library version %s\n", TF_Version());
system("pause");
return 0;
}
Case2
但1.13.1的只有头文件和.dll文件,若要调用,无需配置其他,只需要包含<windows.h>,利用LoadLibrary函数提取libtensorflow.dll对应函数。
C++代码:
#include<windows.h>
#include <stdio.h>
//#include "c_api.h"//TF头文件
int main() {
HMODULE p=LoadLibrary("tensorflow.dll");
if (p == NULL) {
printf("NULL");
return 1;
}
//const char* TF_Version(void);//c_api.h中的函数
const char*(*TF_Version)(void)=(const char*(*)(void))GetProcAddress(p, "TF_Version");//获取TF_Version函数指针
printf("Hello from TensorFlow C library version %s\n", TF_Version());
system("pause");
return 0;
}
输出:
后记:
使用libtensorflow2.3.0配置中,发现也可调用tensorflow1.13.1的tensorflow.dll,应该是函数名字定义一致。鸡贼点也可利用libtensorflow2.x.x的文件来配置工程,再调用libtensorflow1.x.x的dll。
完!
上一篇: Java学习 - Mac安装JDK
下一篇: (65)-- 爬取58交友信息