前言
笔者本次使用的是RK3588的开发板,内部烧写的是ubuntu20.04,gcc版本是9
本文档简单记录下编译的过程,有需要的小伙伴可以参考下
一、安装所需软件
1.安装git,教程比较多,不再重复
2.安装cmake,教程比较多,不再重复
3.安装gcc编译器
笔者在此说明下,正常在ubuntu下,可以直接使用在线安装命令安装
如sudo apt-get install git cmake cmake-gui build-essential
但ubuntu20.04源中,cmake版本比较低,建议直接去官网下载最新的arm64版本
二、获取源码
项目地址:GitHub - KhronosGroup/OpenCL-SDK: OpenCL SDK
可以直接使用git命令拉取:
git clone --recursive https://github.com/KhronosGroup/OpenCL-SDK.git或者git clone https://github.com/KhronosGroup/OpenCL-SDK.git
cd OpenCL-SDK
git submodule init
git submodule update
下载过程可能比较长,需要下载几个子模块
若中间失败了,需要继续执行更新
注:建议使用科学的上网方式,否则可能下载比较慢
三、编译源码
使用cmake设置,点击Configure按钮
笔者使用的是默认编译器,若安装了多个编译器,注意选择下
板子上不方便截图,所以就先不放了
第一次设置时,需要下载缺少的其他工程源码,过程可能比较长
设置参数根据需求,修改下。笔者使用默认参数设置的,全部正常编译通过
笔者建议修改下安装位置,到自定义目录中,以免与其他opencl的库文件冲突
可能需要多次点击configure按钮,全部成功后,点击Generate按钮,生成项目文件
终端里,切换到项目文件目录,执行如下命令
make
若编译成功 ,再执行如下命令,安装到指定目录中
make install
后记
网上也有教程,说可以直接在板子上找到libOpenCL.so的动态库,然后从openCL官网下载头文件,导入工程就可以使用。笔者没有测试过,有需要的小伙伴可以尝试下。