源码编译
编译驱动
前提条件
Linux服务器已安装qemu-user-static、binfmtsupport、yaml、unzip、unrar与交叉编译器。
操作步骤
- 登录Linux服务器。
- 执行如下命令,切换至root用户。
su - root
- 使用“WinSCP”,将软件包“A200-3000-EP-SDK-Vxxx.zip”上传至Linux系统任一目录下,例如/opt。详细操作请参见使用WinSCP传输文件。
- 执行如下命令,解压软件包“A200-3000-EP-SDK-Vxxx.zip”。
unzip A200-3000-EP-SDK-Vxxx.zip
- 执行如下命令,进入project目录,获取“source.tar.gz”。
cd project
- 执行如下命令,解压“source.tar.gz”。
tar -zxvf source.tar.gz
- 执行如下命令,进入源码路径。
cd source
- 执行如下命令,进行源码编译。
make CROSS_COMPILE=交叉编译gcc KERNEL_DIR=编译驱动ko指定kernel的根目录 O=编译结果输出目录
- 驱动ko指定的kernel,需要提前进行编译,并且需要有.config文件和include目录。
- 执行此命令时,如果报错,请确认依赖包libncurses5-dev、bison、flex是否已安装。
- 编译结果输出目录,支持绝对路径与相对路径。默认为当前路径下out文件夹。
- 将编译结果输出目录的内容拷贝到../../lib/host目录下。
以编译结果输出目录out为例,cp –arf ./out/release_imags/* ../../lib/host
安装驱动
操作步骤
- 登录Linux服务器。
- 执行如下命令,切换至root用户。
su - root
- 使用“WinSCP”,将软件包“A200-3000-EP-SDK-Vxxx.zip”上传至Linux系统任一目录下,例如/opt。详细操作请参见使用WinSCP传输文件。
- 执行如下命令,解压软件包“A200-3000-EP-SDK-Vxxx.zip”。
unzip A200-3000-EP-SDK-Vxxx.zip
- 执行如下命令,进入“软件包所在目录/scripts/install”目录,例如/opt/scripts/install。
cd /opt/scripts/install
- 执行如下命令,创建HwHiAiUser用户。
groupadd HwHiAiUser
useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash
- 执行如下命令,安装脚本。
bash install_all.sh
文件将会安装在如下路径:
“/lib64”
“/bin”
“/usr/bin”
“/usr/local/HiAI/driver”
“/usr/local /HiAI/firmware”
“/usr/local/sbin/”
- 执行如下命令,设置other为可执行权限。
chmod -R o+x /usr/local/HiAI
- 进入“/usr/local /HiAI/driver/boot”目录。
cd /usr/local/HiAI/driver/boot
- 执行启动命令。
bash davinci_boot_pcie_3559.sh
编译Host端驱动时,如果使用Euler操作系统,由于该操作系统中有drv_seclib_host对应驱动,所以在执行davinci_boot_pcie_3559.sh启动命令时,会报“加载drv_seclib_host驱动失败”,可忽略该错误。