GNU ARM eclipse / QEMU arm 模擬器 - 安裝
eclipse 基金會
Eclipse最初是由IBM公司開發的替代商業軟體Visual Age for Java的下一代IDE開發環境,2001年11月貢獻給開源社群,現在它由非營利軟體供應商聯盟Eclipse基金會(Eclipse Foundation)管理。
Eclipse基金會的宗旨在於打造開放源碼的開發平台,最著名的專案為
Eclipse整合開發環境(IDE), 包括IBM、Google、甲骨文(Oracle)、
微軟(Microsoft) 及紅帽(Red Hat)都是該基金會的會員。
安裝 eclipse
可從 eclipse 官網 下載安裝
=====
From Wiki
QEMU 是一套由Fabrice Bellard所編寫的模擬處理器的自由軟體。
QEMU有兩種主要運作模式:
(1) User mode模擬模式,亦即是使用者模式。
QEMU能啟動那些為不同中央處理器編譯的Linux程式。
而Wine及Dosemu是其主要目標。
(2) System mode模擬模式,亦即是系統模式。
QEMU能模擬整個電腦系統,包括中央處理器及其他週邊裝置。
它使得為系統源代碼進行測試及除錯工作變得容易。
其亦能用來在一部主機上虛擬數部不同虛擬電腦。
===
Eclipse最初是由IBM公司開發的替代商業軟體Visual Age for Java的下一代IDE開發環境,2001年11月貢獻給開源社群,現在它由非營利軟體供應商聯盟Eclipse基金會(Eclipse Foundation)管理。
Eclipse基金會的宗旨在於打造開放源碼的開發平台,最著名的專案為
Eclipse整合開發環境(IDE), 包括IBM、Google、甲骨文(Oracle)、
微軟(Microsoft) 及紅帽(Red Hat)都是該基金會的會員。
安裝 eclipse
可從 eclipse 官網 下載安裝
=====
From Wiki
QEMU 是一套由Fabrice Bellard所編寫的模擬處理器的自由軟體。
QEMU有兩種主要運作模式:
(1) User mode模擬模式,亦即是使用者模式。
QEMU能啟動那些為不同中央處理器編譯的Linux程式。
而Wine及Dosemu是其主要目標。
(2) System mode模擬模式,亦即是系統模式。
QEMU能模擬整個電腦系統,包括中央處理器及其他週邊裝置。
它使得為系統源代碼進行測試及除錯工作變得容易。
其亦能用來在一部主機上虛擬數部不同虛擬電腦。
===
GNU ARM eclipse
Hello World 範例
(1) 安裝 CDT
Add Name: Kepler,
Address: http://download.eclipse.org/releases/kepler
我加入 :
C/C++ Call Grsaph Visualization
C/C++ Development Tools
Eclipse XML Editors and Tools
(2) Install for GNU ARM
- 把 Install icon 拉進 Eclipse workspace, 就會開始安裝
(3) 安裝 qemu package -
The package is installed in:
/Applications/GNU ARM Eclipse/QEMU/${version}
偏好設定
==
編輯 上述 Hello World 範例
按右上榔頭 build, 很快會 build 完成
====
問題: dyld: Library not loaded: /opt/macports/lib/liblzo2.2.dylib
解決: brew update
brew install lzo
===
QEMU debugging
Associate Device to A project
QEMU debugging plug in
Install - 重新 download pkg 安裝
按照內容 debug 設定即可.
可設斷點 / 顯示 registers / 可用 trace_printf
eclipse 用的是這一套 : 可以這樣下, 在 shell 可以看到.
./qemu-system-gnuarmeclipse -mcu STM32F107VC --image /Users/neojou/Documents/workspace/hello1/Debug/hello1.elf
file ../hello.elf../hello.elf: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, not strippedfile ./demos/blink_flash/main.elf./demos/blink_flash/main.elf: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, not stripped---
Profiling
DWT registers
google benchmark
RTEMS project
https://github.com/RTEMS/rtems/tree/master/testsuites/rhealstone
其他:
M7 support
CMSIS++
---
Pebble : https://github.com/pebble/qemu.git
---
測試 : 從無到有開發 C 編譯器
git clone https://github.com/jserv/amacc.git
Linaro ARM toolchain
https://github.com/Illuminux/ct-ng-linaro-mac
安裝 MacTex
linux-gnueabi and linux-gnueabihf which indicate soft float, and hard float respectively.
---
openstack on ARM
---
Jailhouse
----
---MAC 安裝 :(1) brew install qemu(2) brew install pkg-config(3) libfdi : brew install dtc
- download dtc from its repository and extract the tarball to
qemu/dtc/
. - Compile dtc from source using
make
- Restart configuring qemu using
./configure
when inqemu
directory.
1. 版本
$ qemu-system-arm -version
QEMU emulator version 2.6.0, Copyright (c) 2003-2008 Fabrice Bellard
2. 看支援平台
$ qemu-system-arm -M ?
安裝 stm32 for qemugit clonecd qemu_stm32 ./configure --disable-werror --enable-debug \ --target-list="arm-softmmu" \ --extra-cflags=-DDEBUG_CLKTREE \ --extra-cflags=-DDEBUG_STM32_RCC \ --extra-cflags=-DDEBUG_STM32_UART \ --extra-cflags=-DSTM32_UART_NO_BAUD_DELAY \ --extra-cflags=-DSTM32_UART_ENABLE_OVERRUN make
Test :make check-qtest-arm---git clone git://github.com/beckus/qemu_stm32.git
make all make blink_flash_QEMURUN make button_QEMURUN make uart_echo_QEMURUN
---指令info registers : 顯示 cpu 狀態quit : 離開stop : 停止模擬cont : 繼續模擬---make blink_flash_QEMURUN
留言
張貼留言