这项技术已经出来很久了,网上各类大神的文字教程也很多,但是对于新手在编译过程中总有许多的问题,所以我把整个安装过程及可能出现的问题和解决方法写出来。

环境:

我用的是ubuntu12.04-i386(其实kali也可以)

一:更新系统

H6(NP[1~](5%B2HRVXZ$GM6.jpg

右上角进入软件更新,修改更新源(当然也可以命令修改vi /etc/apt/sources.list

1I$_G{H{K9O8_L(C)`73EA7.jpg

点击settings

Y{A]TQL`_XLLG9CG{CPGPNB.jpg

software里面找到download from 修改自己国家的更新源

然后保存退出即可

现在打开终端


$ sudo apt-get update

$ sudo apt-get upgrade

二:接着安装一系列依赖


$ sudo apt-get install libusb-0.1-4 libpcsclite1 libccid pcscd

$ sudo apt-get install libtool shtool autoconf git-core pkg-config make gcc 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 libpcsclite-dev

(不要嫌多。。直接复制)

三:创建几个目录,下载ARM编译器


$ mkdir osmocombb

$ cd osmocombb

$ mkdir build install src

$ wget http://bb.osmocom.org/trac/raw-attachment/wiki/GnuArmToolchain/gnu-arm-build.3.sh

$ cd src

$ wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2

$ wget http://ftp.gnu.org/gnu/binutils/binutils-2.21.1a.tar.bz2

$ wget ftp://sources.redhat.com/pub/newlib/newlib-1.19.0.tar.gz

四:安装gnu-arm-build.3.sh


$ cd ..

$ chmod +x gnu-arm-build.3.sh

$ ./gnu-arm-build.3.sh

VBB)~U_7~({XG))_}SJDJ`5.jpg

看到这里直接回车即可(过程非常漫长,建议可以看个电影先。。)

五:安装完过后添加环境


$ cd install/bin

$ pwd

(查看路径)

$ vi ~/./.bashrc

export PATH=$PATH:/osmocombb/install/bin (最后一行加入,保存退出) $ source ~/.bashrc

_}E`KZPQ}11CC]M86T}NC18.jpg

六:下载并编译osmocomBB

回到osmocombb目录下载osmocom


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

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

在安装libosmocore执行./configure 的时候很多人会遇到 No package ‘talloc’ found 这种错误,因为找不到talloc,下面是解决办法


$ wget https://www.samba.org/ftp/talloc/talloc-2.1.7.tar.gz

$ tar -zxvf talloc-2.1.7.tar.gz

$ cd talloc-2.1.7/

$ ./configure

$ make

$ sudo make install


安装libosmocore


$ cd libosmocore/

$ autoreconf -i

$ ./configure 

$ make

$ sudo make install $ cd ..

编译osmocombb


$ cd osmocom-bb

$ git checkout --track origin/luca/gsmmap

$ cd src

$ make

七:修改问题文件(如果你是gnu-arm-build.2.sh并且没有出现cell扫描不动的问题,请跳过这一步

进入osmocom-bb找到这些文件并修改他们

vi osmocom-bb/src/target/firmware/board/compal/highram.lds

vi osmocom-bb/src/target/firmware/board/compal/ram.lds

vi osmocom-bb/src/target/firmware/board/compal_e88/flash.lds

vi osmocom-bb/src/target/firmware/board/compal_e88/loader.lds

vi osmocom-bb/src/target/firmware/board/mediatek/ram.lds

找到里面的这一串代码

KEEP(*(SORT(.ctors)))

在下面加入

KEEP(*(SORT(.init_array)))

列如:

6EAOU(5`)8E)I_ICM_DFAYB.jpg

保存即可,全部修改好,在进入osmocom-bb/src重新编译一下

$ make -e CROSS_TOOL_PREFIX=arm-none-eabi-

八:插~入你的118刷入固件

还是在osmocom-bb目录


$ cd src/host/osmocon

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

@N3T67P`CB2Z[`MYL4$O}65.jpg

回车出现这样等待的时候按一下你c118的开机键,按一下就可以

F[5VR[EFHCPWZ[8`BAK%$_6.jpg

如果这样是刷入失败,看一下你的c118连接线,如果你是买的新手机建议把线插紧一点。。最好把壳拆下来

M6$I8HT_LM@%25NO`A$BAN8.jpg

九:扫描基站信息

打开新的终端还是在osmocom-bb目录


$ cd src/host/layer23/src/misc

$ sudo ./cell_log -O

U$9)$BHYA%U}P{(KWZVM%`N.jpg

接着输入

$ sudo ./ccch_scan -i 127.0.0.1 -a ARFCN

ARFCN就是上面图圈出来的那个值,列如

$ sudo ./ccch_scan -i 127.0.0.1 -a 59

十:安装wireshark 

打开新的终端


$ sudo apt-get install wireshark 

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

B%2V5(QN$HTU2{MOT[N@9I1.jpg

在filter输入 gsm_sms

接下来静静的等待吧。。。

SFAXXC@0L_PJE_2H(XD1`I7.jpg

最后,自己玩去吧。。

如果还有疑问可以参考以下视频:

* 作者:diulei