ubuntu S3C2440 開發環境搭建
1.安裝交叉編譯工具鏈
工具鏈來源:使用百問網下載的制作好的工具鏈;
上傳到Ubuntu /home/liu/自定義目錄下,並解壓。
設置所有用戶環境變量:
vim /etc/profile
首行添加如下
export PATH=/home/liu/ARM9/Tools/gcc-3.4.5-glibc-2.3.6/bin:$PATH
保存並退出,更新生效:
source /etc/profile
2.安裝相關庫
用來解決
arm-bcm2708hardfp-linux-gnueabi- menuconfig 找不到命令的錯誤
命令行輸入:
sudo apt-get install lib32z1 lib32ncurses5
然後解決 curses.h:No such fileor directory 問題
安裝Ncurses
命令行輸入:
sudo apt-get install libncurses5-dev
3.安裝裸機下載工具 oflash
復制到 bin目錄
cp -r oflash /usr/bin
獲取執行權限
sudo chmod +x oflash
4.安裝libftdi和ftdi-eeprom
安裝目的:為編譯 OpenOCD 安裝依賴庫和OpenJTAG芯片(FT2232)驅動
下載地址
https://www.intra2net.com/en/developer/libftdi/download.php
下載 confuse-2.5.tar.gz 和 libftdi1-1.4.tar.bz2 不同版本不同後綴
建立工作目錄把安裝包移動到裏面,分別解壓縮,
安裝libftdi 進入解壓後的 libftdi目錄 :
依次執行:
mkdir build
cd build
然後執行:
cmake -DCMAKE_INSTALL_PREFIX="/usr" ../; make; sudo make install
如果提示沒有安裝 cmake 則執行:
sudo apt install cmake
安裝cmake 後再執行:
cmake -DCMAKE_INSTALL_PREFIX="/usr" ../
make
sudo make install
安裝完成。
安裝 ftdi_eeprom 解壓後進入 confuse 目錄:
依次執行:
./configure
make
make install
不報錯則安裝完成
4.編譯 OpenOCD
網站源碼安裝
下載源碼:
http://www.openocd.net/
復制到 ubuntu 自定義目錄
提取壓縮包進入文件目錄
./configure --enable-maintainer-mode --enable-ftdi_libftdi
make
sudo make install
進入 /usr/local/share/openocd/scripts/board 復制 mini2440.cfg 到 /usr/local/share/openocd/scripts
打開該文件
開頭加入
#openocd 0.10.0中默認使用新的ftdi接口,如果希望使用舊的ft2232接口,需要在編譯openocd時指定。
interface ftdi
#通過描述來指定設備,應當和dmesg中的Product一致
#ftdi_device_desc "USB<=>JTAG&RS232"
#通過PID VID指定調試器,比描述更準確些
ftdi_vid_pid 0x1457 0x5118
#如果有多個同樣的調試器,還可以指定要使用的調試器序列號
#ftdi_serial
#引腳定義,相當於舊版中的 ft2232_layout jtagkey
ftdi_layout_init 0x0c08 0x0f1b
ftdi_layout_signal nTRST -data 0x0100 -noe 0x0400
ftdi_layout_signal nSRST -data 0x0200 -noe 0x0800
157行改為
#nand device s3c2440 0
nand device 0 s3c2440 s3c2440.cpu
或者對比修改 openocd.cfg 文件
git源碼安裝
指定安裝目錄然後執行:
git clone git://openocd.git.sourceforge.net/gitroot/openocd/openocd
下載完畢後依次執行:
./bootstrap
./configure --enable-ftdi
make
make install
安裝完成後在當前目錄執行顯示當前版本
openocd -v
Open On-Chip Debugger 0.10.0+dev-00290-g5a98ff7 (2018-01-31-20:39)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
進入 /usr/local/share/openocd/scripts/board 復制 mini2440.cfg 到 /usr/local/share/openocd/scripts
打開該文件
開頭加入
#openocd 0.10.0中默認使用新的ftdi接口,如果希望使用舊的ft2232接口,需要在編譯openocd時指定。
interface ftdi
#通過描述來指定設備,應當和dmesg中的Product一致
#ftdi_device_desc "USB<=>JTAG&RS232"
#通過PID VID指定調試器,比描述更準確些
ftdi_vid_pid 0x1457 0x5118
#如果有多個同樣的調試器,還可以指定要使用的調試器序列號
#ftdi_serial
#引腳定義,相當於舊版中的 ft2232_layout jtagkey
ftdi_layout_init 0x0c08 0x0f1b
ftdi_layout_signal nTRST -data 0x0100 -noe 0x0400
ftdi_layout_signal nSRST -data 0x0200 -noe 0x0800
157行改為
#nand device s3c2440 0
nand device 0 s3c2440 s3c2440.cpu
或者對比修改 openocd.cfg 文件
ubuntu S3C2440 開發環境搭建