SIMTRACE环境搭建

简介: 搭建simtrace环境 工具环境搭建 仅作参考,具有时效性,请以官方文档为准。 跨平台编译工具arm-elf 参考链接:https://osmocom.org/projects/baseband/wiki/GnuArmToolchain 新建三个目录 mkdir build src...

搭建simtrace环境

工具环境搭建

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

跨平台编译工具arm-elf

参考链接:https://osmocom.org/projects/baseband/wiki/GnuArmToolchain

新建三个目录

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

参考链接:https://osmocom.org/projects/libosmocore/wiki/Libosmocore

安装依赖

sudo apt-get install build-essential libtool libtalloc-dev shtool autoconf automake git-core pkg-config make gcc libpcsclite-dev

git clone git://git.osmocom.org/libosmocore.git

cd libosmocore/
autoreconf -i
./configure
make
sudo make install
sudo ldconfig -i
cd ..

安装pc客户端simtrace

参考链接:https://osmocom.org/projects/simtrace/wiki/SIMtrace

下载simtrace源码

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

依赖

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

编译simtrace 固件

参考链接:https://osmocom.org/projects/simtrace/wiki/SIMtrace_Firmware

下载源码及编译

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

源码修改链接:http://git.osmocom.org/openpcd/commit/?id=373c172ab858102e1818c8476ab1a2b290685cda

在交叉编译工具中的头文件( #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.git
cd openpcd/firmware

设置环境变量(arm-elf-gcc所在目录)
exportPATH = PATH:/home/mtq/simtrace/arm-elf-toolchain/install/bin

make -f Makefile.dfu BOARD=SIMTRACE
make BOARD=SIMTRACE DEBUG=1 TARGET=main_simtrace
cat dfu.bin main_simtrace.bin > main_simtrace.samba
cd ../..

其中生成的文件

  • 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.bz2
cd sam7utils
./configure –prefix=/usr/local
make AM_CFLAGS=””

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

相关文章
|
4月前
|
存储 安全 Linux
TiDB安装准备工作与基础环境搭建
【2月更文挑战第28天】TiDB安装前需满足硬件(足够CPU、内存、存储)和软件(Linux,推荐CentOS 7+)要求,确保网络稳定性。配置包括设置唯一主机名,关闭防火墙和SELinux,同步NTP,创建TiDB用户和目录。下载官方安装包并验证后,解压,配置环境变量,初始化集群,启动服务并验证运行状态。稳定的环境对发挥TiDB性能至关重要。
|
9月前
|
关系型数据库 MySQL PHP
小白带你学习部署LAMP平台
小白带你学习部署LAMP平台
82 0
|
3月前
|
IDE Java 关系型数据库
SpringBootWebProject学习1、环境搭建
SpringBootWebProject学习1、环境搭建
32 1
|
9月前
|
关系型数据库 MySQL 应用服务中间件
小白带你部署LNMP分布式部署
小白带你部署LNMP分布式部署
178 0
|
11月前
|
关系型数据库 MySQL Linux
Linux环境下LNMP架构实战案例
Linux环境下LNMP架构实战案例
|
JavaScript 数据安全/隐私保护
Hexo+Next8的升级踩坑之旅
Hexo+Next8的升级踩坑之旅
197 0
|
消息中间件 运维 NoSQL
【运维】Centos 7 一键 搭建 Java开发者环境
虽然自己是一个开发,但是并不能止于开发的技术,项目发布需要部署到到Linux 服务器上, 所以对于开发人员来说,掌握一定的运维技能是必须的, 之前也有过帮人搭建网站的一些经验,运维什么的也是自己一并来,所以专门写一篇文章来记录一下相关,方便回头查阅! Centos 7 开发者环境初始化脚本下载
|
Ubuntu Oracle Unix
应用搭建必备-Liunx 基础
我们平时有很多机会去搭建应用服务,比如说自己通过爬虫抓取一些数据,然后做成 API 提供出去,或者写一个 Web 应用,面向公网上的用户提供服务。这些的背后都需要一套基础服务作为底层应用,虽然不需要很庞大复杂,但是该有的,一个都不能少。今天我们先来了解下作为基础也是必备的基础应用 -- Linux 操作系统基础。
应用搭建必备-Liunx 基础
|
弹性计算 关系型数据库 MySQL
动手实操快速搭建LAMP环境
本实验介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
200 0
|
安全 网络安全 Java
阿里云服务器搭建elk环境
elasticsearch、kibana、logstash
下一篇
云函数