环境
Ubuntu-18.04, llvm-13, Halide源码编译
- 1
准备
参考了[第一篇](https://www.p-chao.com/2020-10-02/halide%EF%BC%88%E4%B8%80%EF%BC%89%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE/)
[第二篇](https://blog.csdn.net/gaussrieman123/article/details/90208636)
- 1
- 2
- 配置LLVM
根据网上教程直接install.然后环境变量
export LLVM_CONFIG=<path to llvm>/build/bin/llvm-config
export CLANG=<path to llvm>/build/bin/clang
- 1
- 2
- 3
-
clone Halide源码
-
make
参考第二篇, 直接操作, 无bug.
% cd ..
% mkdir halide_build
% cd halide_build
% make -f ../Halide/Makefile
- 1
- 2
- 3
- 4
- 5
最初考虑使用Halide readme推荐那样Vcpkg安装:
clone vcpkg源码, 编译, 好像是成功了, vcpkg install halide:x64-linux 出bug, 无法解决, 就一并vcpkg都删除了.
换方法, cmake源码编译:
- 1
- 2
- 3
sudo apt install \
clang-tools lld llvm-dev libclang-dev liblld-10-dev \
libpng-dev libjpeg-dev libgl-dev \
python3-dev python3-numpy python3-scipy python3-imageio python3-pybind11 \
libopenblas-dev libeigen3-dev libatlas-base-dev \
doxygen ninja-build
- 1
- 2
- 3
- 4
- 5
- 6
参考"第一篇",一顿操作, 安装了一堆东西, 后来按下面开始cmake...就开始了一连串的bug,
llvm版本不对, 上面操作安装的是llvm-6, 人家最低要求llvm-12,
单独安装llvm-13, 还有clang-13,,,,一堆的依赖, 然后cmake...缺少libclang-13.so.13.0.0, 无法解决
换方法, 遇到"第二篇" make...
- 1
- 2
- 3
- 4
cmake -DCMAKE_BUILD_TYPE=Release -DLLVM_DIR=/path/to/llvm-install/lib/cmake/llvm /path/to/Halide
cmake --build .
- 1
- 2
测试
- 配置环境变量
在库构建好之后,需要把libhalide.so所在的目录添加到环境(否则程序会提示缺少libhalide.so)
vi ~/.bashrc
export LD_LIBRARY_PATH=/path/to/lib
source ~/.bashrc #更新
- 1
- 2
- 3
- Halide: lesson-01
直接按lesson-01里面的命令 g++…
有一个bug:
-std=c++17就ok 了
编译好, 直接./lesson-01运行:
Success!