导航:首页 > 源码编译 > 用乌班图编译电脑硬盘固件

用乌班图编译电脑硬盘固件

发布时间:2023-07-18 06:08:27

⑴ ubuntu编译osmocombb完要多久

ubuntu编译GNUARM以及OsmocomBB环境方法如下,时间的话看你代码速度啦

以下所有操作基于Ubuntu Linux下,所以基于Ubuntu、Debian等Linux版本均可使用。

一、以Root权限进行接下来的所有操作:

$ sudo -s

二、安装编译osmocomBB所需的软件包:

$ aptitude install libtool shtool autoconf git-core pkg-config make gcc

三、下载所需要的GnuARM ToolChain

基于x86架构

$ wget http://gnuarm.com/bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-6.1.tar.bz2 网络网盘

$ tar xf bu-2.15_gcc-3.4.3-c-c++-java_nl-1.12.0_gi-6.1.tar.bz2

$ mv gnuarm-* ~/gnuarm

基于64位架构

$ wget http://www.gnuarm.com/bu-2.16.1_gcc-4.0.2-c-c++_nl-1.14.0_gi-6.4_x86-64.tar.bz2 网络网盘

$ tar xf bu-2.16.1_gcc-4.0.2-c-c++_nl-1.14.0_gi-6.4_x86-64.tar.bz2

$ mv gnuarm-* ~/gnuarm

这样子就已经完成了关于OsmocomBB的交叉编译环境的搭建,剩下就是最关键的设置环境变量

$ export PATH=~/gnuarm/bin:$PATH

建议是直接编辑~/.bashrc的内容,把上面的这个段话直接加到最后。


四、编译libosmocore:

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

$ cd libosmocore/

$ autoreconf -i

$ ./configure

$ make

$ make install

$ cd ..

$ ldconfig

ldconfig命令一定不要忘记执行,否则osmocomBB编译后运行时会出现找不到libosmocore.so.4的错误。


五、编译OsmocomBB:

$ git clone git://git.osmocom.org/osmocom-bb.git

$ cd osmocom-bb

$ git checkout --track origin/luca/gsmmap

$ cd src

$ make

基本上已经完成所有的编译操作了!Enjoy你的玩具吧!

使用OsmocomBB

首先我们需要在刷写固件之间完成以下几个手动操作,以便接下来的其他操作。因为摩托罗拉C118的数据连接线是用2.5mm音频接口的,所以连接方面大家要注意的是:

连接线接口的小缺陷

红色框住的地方可能会导致大家在误以为接口已经完全和手机接口衔接了,但在刷机的时候没有任何反应。所以这个部分需要大家自己去削一下的。

连接线与TTL的接法

黑/黄:GND
红:TX
白:RX

以上的接法是针对我们RadioWar淘宝店所出售的CP2102以及FT232rl,而基于淘宝其他的产品可能会在TX和RX部分需要反接,大家要记住。有些朋友会说为什么我们不建议PL2303,那是PL2303只有标准的波特率,所以无法进行任何调制,在真正功能固件上使用会出现很大的问题。所以我们不建议使用PL2303

当我们处理完以上的操作之后,就在osmocomBB套件目录下进行相关固件刷写操作,请记住这个操作过程只是临时性的,固件只是以RAM TO ROM的途径下进行临时刷写,关机后原有的摩托罗拉系统依然会存在的。

cd ~/osmocom-bb/src/host/osmocon/

启动osmocon刷写所需要的固件,通常大家都是直接刷写Layer1的固件。

./osmocon -m c123xor -p /dev/ttyUSB0 ../../target/firmware/board/compal_e88/layer1.compalram.bin

看清楚c123xor是基于C118的,非C118的手机请不要使用这个,并且记住C118的固件目录就是compal_e88,在输入以上命令之前,手机必须连接好连接线以及TTL,并且确保手机必须为关键状态。命令输入完成后,当前命令窗口会出现以下类似信息:

got 1 bytes from modem, data looks like: 2f /
got 1 bytes from modem, data looks like: 00 .
got 1 bytes from modem, data looks like: 1b .
got 4 bytes from modem, data looks like: f6 02 00 41 ...A
got 1 bytes from modem, data looks like: 01 .
got 1 bytes from modem, data looks like: 40 @

出现以上信息后,直接轻按手机的红色开机键,只需点亮机器而不需要进入手机的系统!!!这样子信息状态会显示类似以下的信息:

Received PROMPT1 from phone, responding with CMD

read_file(../../target/firmware/board/compal_e88/layer1.compalram.bin):file_size=56016,hdr_len=4,dnload_len=56023

got 1 bytes from modem, data looks like: 1b .

got 1 bytes from modem, data looks like: f6 .

got 1 bytes from modem, data looks like: 02 .

got 1 bytes from modem, data looks like: 00 .

got 1 bytes from modem, data looks like: 41 A

got 1 bytes from modem, data looks like: 02 .

got 1 bytes from modem, data looks like: 43 C

Received PROMPT2 from phone, starting download handle_write(): 4096 bytes (4096/56023)

handle_write(): 4096 bytes (8192/56023)

handle_write(): 4096 bytes (12288/56023)

handle_write(): 4096 bytes (16384/56023)

handle_write(): 4096 bytes (20480/56023)

handle_write(): 4096 bytes (24576/56023)

handle_write(): 4096 bytes (28672/56023)

handle_write(): 4096 bytes (32768/56023)

handle_write(): 4096 bytes (36864/56023)

handle_write(): 4096 bytes (40960/56023)

handle_write(): 4096 bytes (45056/56023)

handle_write(): 4096 bytes (49152/56023)

handle_write(): 4096 bytes (53248/56023)

handle_write(): 2775 bytes (56023/56023)

handle_write(): finished

got 1 bytes from modem, data looks like: 1b .

got 1 bytes from modem, data looks like: f6 .

got 1 bytes from modem, data looks like: 02 .

got 1 bytes from modem, data looks like: 00 .

got 1 bytes from modem, data looks like: 41 A

got 1 bytes from modem, data looks like: 03 .

got 1 bytes from modem, data looks like: 42 B

Received DOWNLOAD ACK from phone, your code is running now!

battery_compal_e88_init: starting up

看到以上的信息就证明你的固件刷写操作已经成功了,下来的操作可以是扫描基站或者其他简单而快速的方法:

扫描基站

~/cell_logger/osmocom-bb/src/host/layer23/src/misc/cell_log -O

扫描某一个基站,例如30

~/cell_logger/osmocom-bb/src/host/layer23/src/misc/ccch_scan -i 127.0.0.1 -a 30

将扫描基站的日志保存到本地

mpcap -i lo -w ~/cell_logger/mobilelog/Cell.log

打开WireShark实时读取相关的信息

sudo wireshark -k -i lo -f 'port 4729'

⑵ 如何安装Ubuntu Linux

1
下载Ubuntu ISO文件。 你可以从Ubuntu的网站获取该ISO文件。ISO文件是一个CD镜像文件,在使用它之前,你应先对其进行刻录。在Ubuntu的网站上两种选择(你也可以购买Ubuntu的官方CD,每包10张):
广告

12.04 LTS具有持续更新并提供技术支持。它将一直得到支持,直到2017年4月。该选择将让你的现有硬件得到最大的兼容性。

13.04是最新的Ubuntu发行版,具有有限度的支持。它包括了最新的特性,但它可能不能在所有硬件下运行。该版本更适合有经验的Linux用户。

如果你有一台Windows 8 PC或者带UEFI固件的PC,请下载64-bit版本的Ubuntu。大部分较旧的机器应下载32-bit版本。

2
刻录ISO文件。打开你的刻录软件。有多种免费和付费的软件可用于把ISO刻录为CD或DVD。
Windows 7, 8, 和Mac OS X无需下载特别的软件,就都可以把ISO文件刻录到光盘中了。

3
从光盘启动。完成光盘刻录后,重启计算机并选择从光盘启动。当你重启时,按下设置键即可对启动优先选项进行设置。设置键通常是F12、F2或Del。

4
安装前先试用Ubuntu。从光盘启动后,你将看到无需安装直接试用Ubuntu的选项。操作系统将通过光盘运行,你将有机会了解操作系统的各方面。
打开例子文件夹,了解Ubuntu是如何处理文件的,以及进一步了解整个操作系统。

对操作系统有一定认识后,打开桌面上的Intall文件。

5
安装Ubuntu。你的计算机需要至少4.5GB的空闲空间。如果你希望安装更多程序和创建更多文件,你需要预留更大的空间。如果你在一台笔记本电脑上进行系统安装,请确保机器连上了电源,因为安装过程比日常使用更耗电。
选中“自动下载更新”复选框以及“下载第三方软件”复选框。第三方软件能让你播放MP3以及观看Flash视频(例如YouTube)。

6
建立无线连接。如果你的计算机不是通过Ethernet连接到互联网的,你可以在下一步中设置无线连接。
如果你在前一步中没有设置互联网连接,在建立无线连接后点击回退按钮进行设置,以便可以进行自动更新。
7
选择如何对待你现有的操作系统。如果你的系统上已安装了Windows,在安装Ubuntu时你将有多个选择。你可以让Ubuntu安装后和Windows共存,或者你可以安装Ubuntu以取代原来的Windows。
如果你让新安装的Ubuntu和Windows共存,在每次启动计算机时,你将看到要你选择启动哪一个操作系统的选项。你的Windows上的文件和程序将不受影响。

如果你让新安装的Ubuntu取代Windows,则Windows上的所有文件、文档和程序将被删除。

8
设置你的分区大小。如果你选择安装Ubuntu和Windows共存,你将可以通过滚动条的对Ubuntu的磁盘空间进行分配。请谨记Ubuntu至少需要使用4.5GB的磁盘空间,因此请预留额外的空间用于其他程序和文件。
如果你对你的设置满意,点击现在安装。

9
选择你的地点。如果你已连接至互联网,这一步骤将被自动设置。验证所显示的时区是否正确,然后点击继续按钮。

10
设置键盘类型。你可以从一个选项列表中选择符合情况的选项,或者点击检测键盘类型让Ubuntu自动选择正确的选项。

11
输入登录信息。输入你的名字、计算机的名称(将被显示在网络上)、用户名和密码。 你可以选择让Ubuntu允许你自动登录,或者在开机后必须输入用户名和密码才能登录。

12
等待安装过程的完成。当你设置好登录信息后,安装将开始。在安装过程中,多个关于Ubuntu使用的帮助信息将显示在屏幕上。安装完成后,你将看到重启提示,重启后Ubuntu将开始加载。
广告

方法 2: 使用Windows安装程序

1
从Ubuntu的网站上下载安装程序。如果浏览器给出了提示,请选择运行、保存或打开。Windows安装程序并不和Windows 8兼容。你必须使用前面介绍的方法进行安装。
使用Windows安装程序安装Ubuntu后,Ubuntu将和Windows共存。你的文件和程序将不受影响。当你重启计算机后,你将看到要启动哪一个操作系统的选项。

2
选择你的用户名和密码。运行安装程序后,你将会看到配置菜单。选择你的用户名和密码。
Ubuntu (这是最流行的)具有Gnome,这也是Mac OS X所采用的桌面环境
Kubuntu具有KDE,这也是Windows所采用的桌面环境
Xubuntu具有Xfce,这一桌面环境速度更快,尤其适合较旧的PC。
你可以更改Ubuntu安装的大小。越大型的安装将让你的Linux操作系统有越多的空间安装其程序并添加文件,但这将减少Windows可以使用的空闲空间。

你可以选择你的桌面环境。最常用的是:

3
点击安装开始进行安装。安装程序将开始下载安装Ubuntu所需的文件。安装过程将自动开始。
根据你的互联网连接,下载文件可能需要较长时间。当文件下载在后台进行时,你可以继续使用你的计算机。

4
重启你的计算机。安装完成后,你将看到现在重启或稍后重启这样的选项。当你重启后,你将在Windows启动前看到一个新菜单,让你可以选择启动Windows或Ubuntu。[1]

⑶ ubuntu 环境下怎样编译pixhawk px4源码

Ubuntu环境下Pixhawk原生固件PX4的编译
分类:无人机ubuntu代码编译Pixhawk
(3946) (6)
Ubuntu下Pixhawk原生固件PX4的编译这个问题困扰了两天时间,可能是博主脑力不够,主要是环境搭建不起来,主要原因应该是路径的原因,最后在大师傅的帮助下还好成功将路径搭建好,成功编译。

下面就跟大家分享一下环境搭建的过程。

1.操作环境

每次写文章,环境一定要介绍的,不同的环境总会出现不同的问题

我的环境是Windows下面安装虚拟机,虚拟机跑Ubuntu

Windows:win10 64位

虚拟机:VMware Workstation 12 Pro 12.1.0 build-3272444

Ubuntu:Ubuntu15.10

2.编译环境搭建

(1)权限设置

官方提示:

Warning Never ever fix permission problems by using 'sudo'. It will create more permission problems in the process and require a system reinstallation to fix them.
意思是你会遇到权限问题,不要用sudo解决,那样会带来更多问题,但是我没听他的,我没用,最后也是实现了

官方提供指令

[plain] view plain

然后注销,重新登录生效

(2)安装

更新包列表,安装下面编译PX4的依赖包。PX4主要支持的系列:

NuttX based hardware: Pixhawk, Pixfalcon
Snapdragon Flight hardware: Snapdragon
Raspberry Pi hardware: Raspberry Pi 2
Host simulation: jMAVSim SITL and Gazebo SITL

注意:安装Ninja Build System可以比make更快进行编译。如果安装了它就会自动选择使用它进行编译。

[plain] view plain
卸载模式管理器

[plain] view plain

更新包列表和安装下面的依赖包。务必安装指定的版本的包

[plain] view plain

上面代码中红色部分大家需要一高警惕,gcc-arm-none-eabi版本导致PX4/Firmware编译错误,现在apt-get安装的gcc-arm-none-eabi基本上是4.9的版本,但是这个固件需要gcc-arm-none-eabi 4.8de 版本,所以最后安装好以后,查看你的gcc-arm-none-eabi版本,如果是4.9需要手动安装4.8的版本,安装gcc-arm-none-eabi 4.8的版本的方法如下:

[plain] view plain

【Warning】上面红色的路径一定要添加正确,不然问题很多,我第一次就输入错误,结果结果开不了机了,反复输入密码。博主装的是Ubuntu 64位系统,而上述arm-none-eabi是直接下载的编译好的32位,还需要安装一个东西
[plain] view plain
可以检查arm-none-eabi 4.8.4是否安装成功,输入以下指令:

[plain] view plain
如果出现如上信息,交叉编译环境搭建就搭建成功了
(3)代码编译
根据PX4中文维基官网教程。
安装Git

[plain] view plain
下载代码

[plain] view plain
初始化
先进入Firmware文件夹,进而进行初始化、更新子模块操作,耐心的等待……

[plain] view plain
权限
编译时会遇到权限问题,执行指令

[plain] view plain
-R 是对文件下面包含的子文件权限问题,* 是对所有文件的权限问题
编译

[plain] view plain
注意到“make”是一个字符命令编译工具,“px4fmu-v2”是硬件版本,“default”是默认配置,所有的PX4编译目标遵循这个规则。
最后附一张编译成功的代码,如果这样你还有问题,请给我留言。

[plain] view plain
-- nuttx-px4fmu-v2-default
-- The ASM compiler identification is GNU
-- Found assembler: /opt/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc
-- Found pythonInterp: /usr/bin/python (found version "2.7.10")
-- Using C++03
-- Release build type: RelWithDebInfo
-- Adding UAVCAN STM32 platform driver
-- Configuring done
-- Generating done
-- Build files have been written to: /home/lihongwei/Documents/Firmware/build_px4fmu-v2_default
#+@Tools/check_submoles.sh
PX4 CONFIG: px4fmu-v2_default
Scanning dependencies of target git_mavlink
Scanning dependencies of target git_uavcan
Scanning dependencies of target git_gencpp
Scanning dependencies of target git_genmsg
[ 0%] Generating git_init_mavlink_include_mavlink_v1.0.stamp
[ 0%] Generating git_init_src_moles_uavcan_libuavcan.stamp
[ 0%] Generating git_init_Tools_genmsg.stamp
[ 0%] Generating git_init_Tools_gencpp.stamp
[ 0%] Built target git_uavcan
[ 0%] Built target git_mavlink
[ 0%] Built target git_genmsg
[ 0%] Built target git_gencpp

阅读全文

与用乌班图编译电脑硬盘固件相关的资料

热点内容
dvd光盘存储汉子算法 浏览:757
苹果邮件无法连接服务器地址 浏览:962
phpffmpeg转码 浏览:671
长沙好玩的解压项目 浏览:142
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:736
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:484
h3c光纤全工半全工设置命令 浏览:143
公司法pdf下载 浏览:381
linuxmarkdown 浏览:350
华为手机怎么多选文件夹 浏览:683
如何取消命令方块指令 浏览:349
风翼app为什么进不去了 浏览:778
im4java压缩图片 浏览:362
数据查询网站源码 浏览:150
伊克塞尔文档怎么进行加密 浏览:892
app转账是什么 浏览:163