博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SIMTRACE环境搭建
阅读量:7301 次
发布时间:2019-06-30

本文共 2363 字,大约阅读时间需要 7 分钟。

搭建simtrace环境

工具环境搭建

仅作参考,具有时效性,请以官方文档为准。

跨平台编译工具arm-elf

参考链接:

新建三个目录

mkdir build src install

安装依赖

sudo apt-get install build-essential libgmp3-dev libmpfr-dev libx11-6 libx11-dev texinfo flex bison libncurses5 libncurses5-dbg libncurses5-dev libncursesw5 libncursesw5-dbg libncursesw5-dev zlibc zlib1g-dev libmpfr4 libmpc-dev

将文件夹中 binutils-2.21.1a.tar.bz2,gcc-4.5.2.tar.bz2,newlib-1.19.0.tar.gz 放在src中

脚本工具gnu-arm-build.2.sh 放在当前目录,执行 gnu-arm-build.2.sh

$bash gnu-arm-build.2.sh

目录结构如下:

报错处理:

先卸载 texinfo (apt remove texinfo)

安装低版本texinfo

dpkg –i texinfo_4.13a.dfsg.1-8ubuntu2_amd64.deb

再运行./gnu-arm-build.2.sh

编译库文件libosmocore

参考链接:

安装依赖

sudo apt-get install build-essential libtool libtalloc-dev shtool autoconf automake git-core pkg-config make gcc libpcsclite-devgit clone git://git.osmocom.org/libosmocore.gitcd libosmocore/autoreconf -i./configuremakesudo make installsudo ldconfig -icd ..

安装pc客户端simtrace

参考链接:

下载simtrace源码

git clone git://git.osmocom.org/simtrace.git

依赖

$sudo apt-get install libusb-1.0-0-dev
cd simtrace/host/make

编译simtrace 固件

参考链接:

下载源码及编译

(osmocom最新修改的openpcd源码无法正常使用,其头文件中结构体变量声明类型有误,或者是交叉编译工具版本较旧(uint8_t/ u_int8_t 两个定义),使用旧的可编译通过的源码,openpcd.zip)

源码修改链接:

在交叉编译工具中的头文件( #include )

源代码中最近一次修改是将所有文件中的数据类型u_int8_t、u_int16_t全部修改为uint8_t、uint16_t,但是使用的交叉编译工具(arm-elf-gcc)中的对该数据类型的定义为u_int8_t、u_int16_t。这导致新代码编译出错。

git clone git://git.osmocom.org/openpcd.gitcd openpcd/firmware设置环境变量(arm-elf-gcc所在目录)exportPATH = PATH:/home/mtq/simtrace/arm-elf-toolchain/install/binmake -f Makefile.dfu BOARD=SIMTRACEmake BOARD=SIMTRACE DEBUG=1 TARGET=main_simtracecat dfu.bin main_simtrace.bin > main_simtrace.sambacd ../..

其中生成的文件

  • dfu.bin -- the sam7dfu 2nd level bootloader. It implements the USB DFU (Device Firmware Upgrade) profile.
  • main_simtrace.bin -- the actual simtrace program. To be loaded via DFU, using dfu-util.
  • main_simtrace.samba -- sam7dfu + simtrace image. to be loaded via SAM-BA, using sam7utils (see below).

两种给板子刷固件的方法

1.DFU模式

该模式是在固件可用下,需要升级固件时使用

安装工具

sudo apt-get install dfu-util

刷固件

sudo dfu-util -d 16c0:0762 -a0 -D ./main_simtrace.bin –R

2.SAM-BA

该模式用于板子固件丢失,需要重新刷入底层固件

wget http://www.openpcd.org/dl/sam7utils-0.2.1-bm.tar.bz2(该链接已经失效)tar xf sam7utils-*.tar.bz2cd sam7utils./configure –prefix=/usr/localmake AM_CFLAGS=””

编译生成工具,将板子进入SAM-BA模式

sigline.gif 
本文转自 K1two2 博客园博客,原文链接:http://www.cnblogs.com/k1two2/p/7255369.html
  ,如需转载请自行联系原作者
你可能感兴趣的文章
Instrumentation 功能介绍(javaagent)
查看>>
Core J2EE Patterns - Data Access Object
查看>>
SpringCloud学习成长之路 六 cloud配置中心
查看>>
MyEclipse定位class文件
查看>>
STM32(HY-SRF05)超声波测距项目
查看>>
《practical Java》读书笔记
查看>>
数据库字段顺序的【坑】
查看>>
spring5新响应式框架-webflux实战
查看>>
软甲架构笔记 三
查看>>
STL training (uva上一些比较好的用来熟悉STL)
查看>>
[未完成]关于CSS的总结
查看>>
陈皓一起写Makefile 概述
查看>>
linux下安装启动rpc服务
查看>>
Software Testing, Lab 1
查看>>
World发布博客测试
查看>>
IIS 提高连接的并发数,和CPU的使用率。
查看>>
修改Sysvol复制方式
查看>>
python3.x中如何使用base64、base32、base16编码解码
查看>>
HDOJ 1084 排序 水
查看>>
深度拷贝一个链表
查看>>