Sei sulla pagina 1di 10

Dependencias y programas necesarios para el correcto funcionamiento de OpenBTS

Luis Miguel Castañeda Herrera


Jhonny Atehortua Ramos

1. Recomendaciones:

– Tener conocimiento previo de manejo de sistemas operativos basados en debían,


específicamente en Ubuntu.
– No saltarse ningún paso de esta guía, por un solo detalle el programa puede no funcionar.
– Usar todos los comandos y pasos de esta guía en modo de súper usuario (sudo su).
– Si algún comando de la guía no le funciona digitelo tecla por tecla
– si no se encuentra algún paquete o dependencia buscarlo en administradores de paquetes como
synaptic usado en esta guía.
– Esta guía solo fue probada con las USRP B200, cabe resaltar que prodia funcionar con USRP de
tercera generación como las series B y las series X, pero si el lector de esta guía posee una
usrp1 , no le va servir.
– Esta guía se probo en Ubuntu 12.04 LTS y 14.04.02 LTS no se garantiza su funcionamiento
para 16.04 LTS (Xenial Xerus)

2. Dependencias:
copie y ejecute el siguiente comando en la terminal de Ubuntu si no sabe como abrir una
terminal presione ctrl+alt+T.

sudo apt-get -y install git-core autoconf automake libtool g++ python-dev swig
pkg-config libfftw3-dev libcppunit-dev libgsl0-dev vim ssh libusb-dev sdcc
libsdl1.2-dev python-wxgtk2.8 python-numpy python-cheetah python-lxml doxygen
python-qt4 python-qwt5-qt4 libxi-dev libqt4-opengl-dev libqwt5-qt4-dev
libfontconfig1-dev libxrender-dev libusb-dev fort77 qt4-dev-tools libqwtplot3d-
qt4-dev pyqt4-dev-tools libortp-dev libxml2-dev gawk libdbd-mysql

Algunas dependencias no aparecen en el repositorio de Ubuntu por eso es necesario instalar


administradores de paquetes en este caso se usara synaptic, para su instalación copiar el siguiente
comando:

sudo apt-get install synaptic

para su ejecución simplemente escribir en la terminal synaptic y le aparecerá la siguiente ventana:


En el campo de filtro rápido se copiara las siguientes dependencias se seleccionaran y se marcaran
para instalación y luego se hace clic en aplicar como se muestra a continuación:

libdbi-dev
libdbd-pgsql
bind9

ntp
Nota: No todas las dependencias anteriores son para OpenBTS algunas son para los diferentes
programas y controladores que se ejecutan en paralelo con OpenBTS como asterisk,
sipauthserve, smqueue y GnuRadio.
Nota:En las primeras versiones de OpenBTS era necesario la instalación de Gnuradio que lo
usaba como un especie de framework , pero en las ultimas versiones es totalmente independiente
y no se requiere de la instalación de Gnuradio .

3. Libosip

El paquete “libosip” se usa para dar soporte de comunicación SIP entre


OpenBTS y Asterisk se descarga ejecutando el siguiente comando en la terminal de Ubuntu:

wget http://ftp.gnu.org/gnu/osip/libosip2-3.5.0.tar.gz

La utilización de los siguientes comando aplican para descomprimir, instalar y configurar

gunzip libosip2-3.5.0.tar.gz o descomprimir


tar –xvf libosip2-3.5.0.tar si no sirve los comandos mejor digitelos letra por letra
cd libosip2-3.5.0
./configure
make
make install

4. UHD
las Librerías del UHD se encargan de controlar y detectar las USRP conectadas al computador
Dependencias:

sudo apt-get install cmake


sudo apt-get install libusb-1.0-0-dev
sudo apt-get install sdcc
sudo apt-get install libaudio-dev
sudo apt-get install libuhd-dev libuhd003 uhd-host

por si el comando anterior no funciona:

sudo add-apt-repository ppa:ettusresearch/uhd


sudo apt-get update
sudo apt-get install libuhd-dev libuhd003 uhd-host

sudo apt-get install libboost-all-dev python-mako doxygen python-docutils build-


essential

En al siguiente pagina se pueden descargar las diferentes versiones publicadas de UHD hasta la
actualidad .

Para realizar esta guía se hizo uso de las versiones >= 3.9.3 (recomendado) pero otras versiones
también pueden funcionar
http://files.ettus.com/binaries/uhd/

-Se descargar el tar.gz

-luego se ingresa a la carpeta donde se descargo (Normalmente Download o Descargas) se


descomprime manualmente o digite los siguientes comandos en la terminal :

cd /home/''nombre usuario''/Descargas nota: esta linea puede variar dependiendo de su ubuntu


instalado o lenguaje en que se encuentre

tar -xvf uhd-3.9.3-tar.gz

una ves descomprimida acceder dentro de ella desde la terminal (si no sabe como acceder dentro de las
carpetas desde la terminal use el comando cd y para poder ver todo lo que contiene una use el comando
ls)
ahora se crea la carpeta build y se accede a ella para construir el programa copiar los siguientes
comandos:

mkdir build

cd build

cmake ../

make

make install

Nota: en el momento de usar el comando cmake ../ aparecerán las usrps habilitadas para el UHD
instalado como se ve en la siguiente imagen.
una ves instalado el UHD hace falta descargar las imágenes que en realidad son las firmware que usan
las fpga internas del las USRP, se escribe el siguiente comando :

/usr/local/share/uhd/utils/uhd_images_downloader.py

si el anterior no sirve usar esta /usr/local/lib/uhd/utils/uhd_images_downloader.py

una vez descargadas las imágenes se deben encontrar en las siguientes direcciones

/usr/local/share/uhd

/usr/local/lib/uhd

si solo las encuentra en una de estas acceda a estas carpetas como súper usuario y copie la carpeta
image dentro del uhd que no la tenga, por ultimo copie toda la carpeta uhd en la siguiente direccion.

/usr/share
5. Instalación OpenBTS:

Existen diferentes formas para instalar OpenBTS especial mente dos, pero se le aconseja al lector de
esta que use la forma que se describe en el manual de RangeNetworks publicado en el 2015 que se
puede conseguir en el siguiente enlace.

http://openbts.org/site/wp-
content/uploads/ebook/Getting_Started_with_OpenBTS_Range_Networks.pdf

Sin embargo este manual presenta un problema al ejecutar un comando , que se encuentra en la pagina
10 del manual con el comando build.sh.

este comando antes de ejecutarlo se debe ingresar dentro de el como block de notas y dejar como
comentarios dos lineas de codigos que hacen parte a unas dependencias, esto se hace para el caso de
ubuntu 12 y 14 ya que no existen las utlimas versiones para estas dependecnias, como se muestra en la
siguiente imagen.

las se comentan con un # y son las siguientes y se copian los dos comandos de abajo en la terminal:

#installIfMissing libortp9
#installIfMissing libzmq5

sudo add-apt-repository ppa:chris-lea/zeromq


sudo apt-get update
ya comentadas estas lineas se ejecuta build.sh y se encontrara el siguiente error

devido a que una direccion de internet de uno de los programas en este caso libcoredumper ya no existe
entonces para corregir esto es necesario ingresar a la carpeta dev y eliminar la carpeta libcoderumper
y copiar los siguientes comandes desde la terminal:

git clone https://github.com/RangeNetworks/libcoredumper.git


cd libcoredumper
sudo ./build.sh
sudo dpkg -i libcoredumper1_1.2.1-1_amd64.deb libcoredumper-dev_1.2.1-1_amd64.deb

estos comandos sirven para reincorporar la carpeta que borramos descargandola de nuevo he instalando
libcoredumper por separado una ves hecho este paso en la ruta de la carpeta dev se vuelve a ejecutar el
fichero build.sh borrando del if del libcoredumper (imagen).
6. osmotrx

En el momento que se tenga instalado OpenBTS aunque sigan el manual de RangeNetworks no les
funcionara ya que el transceiver por defecto que tiene no es compatible con algunas versiones de UHD
por eso se usa otro transceiver llamado osmotrx desarrollado por Osmocom que emplea la misma
función

se puede descargar copiando el siguiente comando

git clone git://git.osmocom.org/osmo-trx

Este se guardara en al ruta donde se ejecute el comando

para instalarlo se ingresa en la carpeta y se ejecutan los siguientes comandos desde la terminal

autoreconf -i
./configure
make
sudo make install
una ves instalado se accede a la carpeta Transceiver52M

y se ejecuta con

./osmo-trx -f

el -f es para que sea compatible con OpenBTS

Nota : siempre antes de correr el OpenBTS se debe tener en ejecución osmotrx, esto solo es para el
caso de GSM , para GPRS o UMTS el osmotrx no funciona .

Potrebbero piacerti anche