MNN 转换工具编译记录

我的平台是 windows 10

编译还是很费劲的,记录下要点吧

一共三个 repo:zlib、protobuf 和 MNN,最开始编译 protobuf,没下 zlib,虽然 protoc.exe 能编译出来,但MNN编译的时候,就会说缺少:MNN_compression.pb.h 

另外,我机器装了 mingw64、ninja 和 vs2019,这三个尝试过编译,最后成功的是 mingw64,三个 repo 的 cmake 命令记录如下:

zlib:cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../../install ../..

protobuf:cmake -G "Unix Makefiles"  -Dprotobuf_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX=../../../../install  ../..

MNN: cmake -G "Unix Makefiles" -DMNN_BUILD_SHARED_LIBS=OFF -DMNN_BUILD_CONVERTER=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../../install ../..

三个的编译顺序是有要求的,按照 zlib、protobuf、MNN 来

简单说下用 ninja 和 vs2019 没成功的现象:

ninja 似乎是编译 MNNConvert 的时候报缺少 MNN_compression.pb.h,很奇怪没触发生成该文件的事件,也没仔细查下去了

vs2019 前面是runtime动态库静态库冲突的问题,后面解决了以后,好像还报 protobuf 中的几个函数的链接问题,没仔细查就放弃了,毕竟最后 mingw64 成功了

 

上一篇:LeetCode 1332. 删除回文子序列


下一篇:xaf--手动注册module之WebForm