前言
在mac编译ncnn的文章很少,尤其m1下就更少了,这里大致将一下我编译ncnn的步骤。
准备工作
1、homebrew,mac必备安装命令,拉取依赖包,类似centos的yum,ubuntu的apt-get
2、安装以下三个包:
brew install cmake
brew install protobuf
brew install opencv
开始编译nccn
1、拉取ncnn源码或者下载release包
git clone https://github.com/Tencent/ncnn.git
2、编译
# 进入ncnn源码目录
cd ncnn
mkdir -p build
cd build
cmake ..
make -j4
开始编译pnnx
注意:下载1.13版本的
方式一:
1. 从 pytorch 官网下载 libtorch
2、编译,注意libtorch路径使用绝对路径
cd ncnn/tools/pnnx
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=install -DTorch_INSTALL_DIR="<下载位置>/libtorch" ..
cmake --build . -j 2
cmake --build . --target install
3、把 libtorch/lib 目录下的 dll 全部拷贝到 ncnn/tools/pnnx/build/install/bin
里面
4、打开命令提示符,cd 到 ncnn/tools/pnnx/build/install/bin
目录,运行 ./pnnx
方式二:
1. 下载相关库
pip install torch cmake ninja
2. clone ncnn仓库
git clone https://github.com/Tencent/ncnn.git
3. 编译
cd ncnn/tools/pnnx
# 如果自己构建编译了Python环境,需要进行以下处理
# set(Python3_EXECUTABLE "自己的路径/venv/bin/python3/")
cmake -Bbuild -GNinja
cmake --build build --config Release
4. 运行
./build/src/pnnx