移植 bash到ARM開發板

2021-10-01 16:25:10 字數 1203 閱讀 7908

一般情況下,在arm開發板中都會有sh,這是隨busybox攜帶的指令碼工具。如果想將shell指令碼在arm目標機中執行,則需要把指令碼第一行的#!/bin/bash改為#!/bin/sh。但這樣雖然可以執行指令碼,但是指令碼中的許多語法是不支援的,例如:

1、判斷: if [ -d /usr ] ; if [ -b /dev/sda1 ]

2、數值運算:sum=$[$val1+$val2]

3、邏輯運算:and=$[ $val1 & $val2 ]

解決方法就是將bash移植到目標板

移植環境:  ec20 open開發板

$ mkdir /home/hui.zhang/w/tmp/shell/                 # 建立bash工作目錄

$ cp bash-4.3.tar.gz /home/hui.zhang/w/tmp/shell/ # 複製安裝包

$ cd /home/hui.zhang/w/tmp/shell/ # 進入/home/veryarm/bash目錄

$ tar zxvf bash-4.3.tar.gz # 解壓

編譯之前,已執行環境配置指令碼,然後進行配置,命令:

$ mkdir install                                 # 建立安裝目錄

$ cd bash-4.3# 進入目錄

$ ./configure --prefix=/home/share/xiatao/platform_code_a04ver/ql-ol-sdk/ql-ol-extsdk/example/install  --host=arm-linux

--prefix:指定安裝目錄

--host:執行在的主機環境

編譯並安裝:

$ make & make install
安裝成功後在安裝路徑/home/hui.zhang/w/tmp/shell/istall下生成兩個目錄

bin 和 share,將bin中的 bash 可執行檔案複製至開發板 /bin 中,並修改執行許可權:

root@k200:/ #cp bash /bin
root@k200:/ #chmod +x /bin/bash
在開發板中執行bash

root@k200:/ #bash
bash-4.3#

移植ubuntu core到Arm開發板

最初是想把整個ubuntu移植到mx51開發板,因為專案不需要執行桌面系統,所以只移植了乙個基本的ubuntu core系統 這個映象就是乙個rootfs,可以作為根檔案系統使用。2.把映象燒寫到開發板的乙個分割槽上 3.我的arm開發板是mx51,修改uboot啟動引數如下 set bootarg...

qwt移植到arm開發板

arm版本的qwt和x86一樣,只需要改幾個地方即可。1 首先設定編譯工具鏈環境變數 path usr local arm 4.4.1 bin path 2 qmake 生成arm版本的makefile 在原始碼的qwt 6.1.0目錄下執行 opt qt 4.7.1 bin qmake 3 注意 ...

移植SQLite到ARM開發板

最近在搞移植資料庫到開發板,上網一搜都是sqlite 所以就用這個吧,記錄一下,特別簡單,首先要確保開發環境是好的,交叉編譯器,nfs檔案系統掛載等,拷貝到ubutun系統裡,解壓 tar xzvf sqlite autoconf 3080403.tar.gz 進入目錄 cd sqlite auto...