Hi3516AV200 SDK 安裝使用
首次安裝SDK
1、Hi3519V101 SDK包位置
看到一個 Hi3519V101_SDK_V1.0.4.0.tgz 的文件,該文件就是Hi3516AV200的軟件開發包。
2、解壓縮SDK包
tar vxf Hi3519V101_SDK_V1.0.4.0.tgz
解壓縮該文件,可以得到一個Hi3519V101_SDK_V1.0.4.0目錄。
3、展開SDK包內容
cd Hi3519V101_SDK_V1.0.4.0/
./sdk.unpack
會出現圖示的錯誤,原因在於Debian和Ubuntu中,/bin/sh默認已經指向dash,這是一個不同於bash的shell,它主要是爲了執行腳本而出現,而不是交互,它速度更快,但功能相比bash要少很多,語法嚴格遵守POSIX標準。
解決辦法:
sudo dpkg-reconfigure dash
選擇no即可。
再次運行上面的命令。
4、在linux服務器上安裝交叉編譯器
1)安裝uclibc交叉編譯器(需要root權限):
進入Hi3519V101_SDK_V1.0.4.0/osdrv/opensource/toolchain/arm-hisiv500-linux
目錄
chmod +x arm-hisiv500-linux.install
sudo ./arm-hisiv500-linux.install
執行source /etc/profile
, 安裝交叉編譯器的腳本配置的環境變量就可以生效了,或者請重新登陸也可。
5、編譯osdrv
a、osdrv 頂層 Makefile 使用說明
具體命令如下:
(1)編譯整個osdrv目錄:
make OSDRV_CROSS=arm-hisiv500-linux CHIP=xxx FLASH_TYPE=xxx all
參數說明:
CHIP:設爲hi3519v101參數時,對應芯片爲hi3519v101;設爲hi3516av200參數時,對應芯片爲hi3516av200。
FLASH_TYPE:設爲nand參數時,使用Nand Flash;設爲spi參數時,使用SPI Nor Flash或SPI Nand Flash。
make OSDRV_CROSS=arm-hisiv500-linux CHIP=hi3516av200 FLASH_TYPE=spi all
最終完成了編譯過程,整個編譯過程用時約30分鐘,編譯後的結果如上。
(2)清除整個osdrv目錄的編譯文件:
make OSDRV_CROSS=arm-hisiv500-linux CHIP=hi3516av200 clean
(3)徹底清除整個osdrv目錄的編譯文件,除清除編譯文件外,還刪除已編譯好的鏡像:
make OSDRV_CROSS=arm-hisiv500-linux CHIP=hi3516av200 distclean
(4)單獨編譯kernel:
待進入內核源代碼目錄後,執行以下操作:
cp arch/arm/configs/hi3516av200_big_little_defconfig .config
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- menuconfig
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- uImage
(5)單獨編譯uboot:
待進入boot源代碼目錄後,執行以下操作
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux- hi3516av200_config
make ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-
將生成的 u-boot.bin 複製到 osdrv/tools/pc/uboot_tools/ 目錄,進入到上述目錄,
cp u-boot.bin ../../../../osdrv/tools/pc/uboot_tools/
./mkboot.sh reg_info_hi3516av200.bin u-boot-hi3516av200.bin,將生成可用的 u-boot-hi3516av200.bin 鏡像文件。