基于MSVC
编译protobuf
参考链接:https://github.com/protocolbuffers/protobuf/blob/master/cmake/README.md
x64
执行以下代码
cd /path/to/protobuf/vsprojects
cmake -G "Visual Studio 15 2017 Win64" -Dprotobuf_MSVC_STATIC_RUNTIME=ON -Dprotobuf_BUILD_TESTS=OFF ../cmake
使用VS打开工程并生成解决方案,把Debug产物复制到/path/to/protobuf/vsprojects/x64/Debug下, 把Release产物复制到/path/to/protobuf/vsprojects/x64/Release下。
将/path/to/protobuf添加至Protobuf_SRC_ROOT_FOLDER环境变量
x86
执行以下代码
cd /path/to/protobuf/vsprojects
cmake -G "Visual Studio 15 2017" -Dprotobuf_MSVC_STATIC_RUNTIME=ON -Dprotobuf_BUILD_TESTS=OFF ../cmake
使用VS打开工程并生成解决方案,把Debug产物复制到/path/to/protobuf/vsprojects/Debug下, 把Release产物复制到/path/to/protobuf/vsprojects/Release下。
- 将/path/to/protobuf添加至Protobuf_SRC_ROOT_FOLDER环境变量
编译模型转换工具
mkdir build
cd build
cmake -G "Ninja" -DMNN_BUILD_SHARED_LIBS=OFF -DMNN_BUILD_CONVERTER=ON -DCMAKE_BUILD_TYPE=Release -DMNN_WIN_RUNTIME_MT=ON ..
ninja
编译产物
MNNConvert : 模型转换工具
MNNDump2Json : 将MNN模型文件打印为类json文件的工具
常见问题
- 如果报错说link error: can not writing MNNConvert.exe, cd到/path/to/MNN/tools/converter/build, 再运行下ninja就好了