win7+vs2017编译MNN和MNNConveter

    1、需要的protobuf库前面已经编译好了;

 2、直接按照网上的教程 输入命令:cmake -G "Visual Studio 15" -DCMAKE_BUILD_TYPE=Release -DMNN_BUILD_CONVERTER=true -DMNN_BUILD_SHARED_LIBS=false ..

    显示错误,Protobuf_LIBRARIES,Protobuf_INCLUDE_DIR未配置;

    3、改命令,加入上面两个路径:cmake -G "Visual Studio 15" -DCMAKE_BUILD_TYPE=Release -DMNN_BUILD_CONVERTER=true -DMNN_BUILD_SHARED_LIBS=false -DProtobuf_LIBRARIES=G:\codewen\protobuf\build\install\lib\libprotobuf.lib -DProtobuf_INCLUDE_DIR=G:\codewen\protobuf\build\install\include ..

  没问题了,生成了工程,继续 命令 cmake --build . --config Release;生成了一堆东西,但是没有生成CONVERTER转换工具;

    4、直接打开sln工程编译,也没有生成CONVERTER转换工具;CONVERTER转换工具的生成项目出现错误,(错误 MSB4018 “CustomBuild”任务意外失败。);观察与MNNConvert相关的项目都会出现这个错误,这几个项目都与Protobuf库相关,同时错误 MSB4018提示的是路径错误,估计是Protobuf库相关路径有问题;

 5、直接改cmake形式,用cmake-gui,打开cmake-gui,配置MNN中的工程,直接通过打开路径来添加Protobuf库相关路径进行配置,同时MNN_BUILD_CONVERTER打钩,MNN_BUILD_SHARED_LIBS去掉勾(打钩编译不过,会出现重定义冲突)如下:

    win7+vs2017编译MNN和MNNConveter

    6、通过cmake-gui生成的工程,打开进行编译,然后就通过生成MNN.lib ,MNNConvert.exe(可以转换模型)。图示如下:

  win7+vs2017编译MNN和MNNConveter

 

   7、MnnConvert转换语句,写成bat,如下:

  win7+vs2017编译MNN和MNNConveter

  MNNConvert.exe -f TFLITE --modelFile G:/codewen/tensorflowW/poseNet.tflite --MNNModel
  G:/codewen/tensorflowW/poseNet.mnn
  Pause

 

上一篇:VS2017账号登录界面登录不上


下一篇:VS2017将已经写完的工程构建为dll