1 setup compile environment
1.1 get toolchain
https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases
arc_gnu_2019.09_prebuilt_elf32_le_linux_install.tar.gz
wget https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-2019.09-release/arc_gnu_2019.09_prebuilt_elf32_le_linux_install.tar.gz
1.2 other tools
sudo apt install cmake
sudo apt install libelf-dev
sudo apt install g++
sudo apt install lib32stdc++6
sudo apt install ninja-build
2 sdk
wget https://www.bosch-sensortec.com/media/boschsensortec/downloads/driver/bhi260ap_cus_sdk_v1-1-8-0.zip
unzip bhi260ap_cus_sdk_v1-1-8-0.zip
source BHI260AP_SDK_V1.1.8.0_Install.sh
3 build
export PATH=$PATH:/home/xxx/arc_gnu_2019.09_prebuilt_elf32_le_linux_install/bin
cd Bosch_Sensortec_Fuser2_BHI260AP_SDK_1.1.8.0
./build.sh
error:-Werror=address-of-packed-member
edit Bosch_Sensortec_Fuser2_BHI260AP_SDK_1.1.8.0\utils\isign\includes\Keys.h
remove all PACK tag in the file.
release firmware to Bosch_Sensortec_Fuser2_BHI260AP_SDK_1.1.8.0\release\gccfw
4 convert firmware to .h file
echo const > fw.h && xxd -i xxx.fw >> fw.h