Windows NCNN编译

本文详细介绍如何在VS2015环境下安装protobuf 3.4.0版本,并完成NCNN项目的编译过程。文中提供了具体的步骤指导,包括下载源码、配置编译参数等,适合初学者参考。

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

个人第一篇博文,只是为了记录自己做的东西。有不足之处尽情谅解。废话少说进入正题。

git地址:https://github.com/Tencent/ncnn

1.安装protobuf

记得很早以前看issue时候有人提出protobuf版本对加载模型有一定影响。所以这里直接按照wiki里面的教程安装3.4.0。

下载源码:https://github.com/google/protobuf/archive/v3.4.0.zip

解压后使用VS2015 x64本机工具命令提示符进入到解压目录

mkdir build-vs2015
cd build-vs2015
cmake -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%cd%/install -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF ../cmake
nmake
nmake install

install完成后,会生成include bin lib在install文件夹内


2.VS2015编译NCNN

a.git源码

b.编译

cd build-vs2015
cmake -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%cd%/install \
    -DProtobuf_INCLUDE_DIR=D:/workspace/protobuf-3.4.0/build-vs2015/install/include
    -DProtobuf_LIBRARIES=D:/workspace/protobuf-3.4.0/build-vs2015/install/lib/libprotobuf.lib \
    -DProtobuf_PROTOC_EXECUTABLE=D:/workspace/protobuf-3.4.0/build-vs2015/install/bin/protoc.exe ..
nmake
nmake install

老版的ncnn需要修改跟目录下的CMakeList.txt,具体见wiki。

静态库和头文件在install里面(src也有.lib 同linux),模型转换工具在tool里面。




### 如何编译 NCNN 库 #### 1. Linux 平台下的 NCNN 编译 在 Linux 环境中,可以通过以下方式完成 NCNN编译和安装。进入 `ncnn` 源码根目录后,可以按照如下流程操作: - 配置构建环境并生成 Makefile 文件: ```bash mkdir build && cd build cmake .. ``` - 使用默认配置进行编译: ```bash make -j$(nproc) ``` 如果需要验证编译后的功能,可以在 `example` 目录下运行示例程序[^1]。 #### 2. Windows 平台下的 NCNN 编译 对于 Windows 用户,推荐使用 CMake 和 Visual Studio 来完成 NCNN编译工作。以下是具体步骤: - 打开 CMake GUI 工具,设置源代码路径以及目标构建路径。 - 完成配置后点击 Generate 按钮生成解决方案文件(`.sln`)。 - 使用 Visual Studio 加载生成的 `.sln` 文件,并选择 Release 版本进行编译[^2]。 为了快速测试 NCNN 功能,在项目中引入头文件 `net.h` 是必要的起点。 #### 3. Android 平台上的 NCNN 编译 针对 Android 开发者,NCNN 提供了专门的支持工具链来简化交叉编译过程。主要方法有两种:一种是从零开始手动配置 NDK;另一种则是利用预编译好的静态库直接集成到应用工程当中[^3]。 如果是后者,则只需将官方发布的最新版本中的 include 和 lib 替换至项目的 jni 子目录即可实现无缝衔接。 #### 4. 测试模型推理性能 无论在哪种操作系统上完成了上述任意一种类型的编译之后,都可以进一步通过 benchmark 组件评估不同神经网络架构的实际表现情况。这一步骤涉及到了特定脚本的位置调整与执行权限赋予等问题解决办法已包含于参考资料第四条说明之中[^4]。 ```bash cd <ncnn_root>/benchmark/ ln -s ../build/benchmark/benchncnn ./benchncnn ./benchncnn ``` 以上即为跨平台条件下成功搭建起基于 NCNN 技术栈开发框架所需经历的主要环节概述及其对应指导建议汇总表单形式呈现出来便于查阅理解吸收掌握运用实践检验提升效率质量效果显著!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值