OpenBTS build problem with USRP

installation
software

#1

Hi i am trying to compile an OpenBTS software using Resbarry Pi B and USRP B200 mini, but i am having trouble compiling ./build.sh B200.

While i was compiling it i got this output :

checking for a supported radio type

- found

checking for a compatible build host

- fully supported host detected: Ubuntu 16.04

adding additional repo tools

- done

checking build dependencies

- done

make a home for this build

mkdir -p BUILDS/2019-01-10–19-35-50

libcoredumper - building Debian package and installing as dependency

cd libcoredumper
./build.sh
rm -rf coredumper-1.2.1
tar zxf coredumper-1.2.1.tar.gz
cd coredumper-1.2.1
mv packages/deb debian
chmod 644 debian/control
patch -p0
File src/elfcore.c is read-only; trying to patch anyway
patching file src/elfcore.c
File src/linuxthreads.c is read-only; trying to patch anyway
patching file src/linuxthreads.c
File src/linux_syscall_support_unittest.cc is read-only; trying to patch anyway
patching file src/linux_syscall_support_unittest.cc
dpkg-buildpackage -us -uc
dpkg-buildpackage: error: fakeroot not found, either install the fakeroot
package, specify a command with the -r option, or run this as root
ERROR: command failed!

ERROR: command failed!

Anyone have come across this problem before ?
i am quite new with OpenBTS and Unbutu mate so i am not sure what i did wrong
Any help would be much appreciated :slight_smile:


#2

The coredumper library seems to be impossible to compile for ARM so I decided to create a "fake" library that has all functions defined but they do nothing. OpenBTS only needs the coredumper to dump information for debugging after a crash so if you don't need this feature you are ok.

Install UHD host: sudo apt-get install uhd-host

Clone this project in your home directory
git clone https://github.com/tom-2015/fakecoredumper
cd fakecoredumper
./install.sh

Run the install.sh script which will compile and install the fake coredumper library.

Now you can clone the OpenBTS project
git clone https://github.com/RangeNetworks/dev
cd dev
./clone.sh
./switchto.sh master

Edit the the build.sh in the dev folder:
Search where the libcoredumper is created and comment the lines with # like below:
if [ "$COMPONENT" == "all" ] || [ "$COMPONENT" == "libcoredumper" ]; then
echo "# libcoredumper - building Debian package and installing as dependency"
sayAndDo cd libcoredumper
# sayAndDo ./build.sh
# sayAndDo mv libcoredumper* ../$BUILDNAME
sayAndDo cd ..
# sayAndDo sudo dpkg -i $BUILDNAME/libcoredumper*.deb
echo "# - done"
echo
fi

This will prevent the coredumper library to be build.

Go to dev/libcoredumper and edit build.sh on the second line you enter exit 0; close and save the file.

now run ./build.sh B200
After the above steps continue with your steps.


#3

for ./install.sh you need to go to the directory where it is located and right click on it and click on properties and go to permissions change the file access to Read and Write and tick the Allow executing file as program.


#4

Hello and Thank You for your reply.
I have managed to install the OpenBTS.

But right now I am having a problem when compiling the "sudo ./transceiver" in cd ./OpenBTS where I will receive this error whenever I try to compile it :

[email protected]:/OpenBTS$ sudo ./transceiver
linux; GNU C++ version 5.3.1 20151219; Boost_105800; UHD_003.009.002-0-unknown

Using internal frequency reference
-- Detected Device: B200mini
-- Loading FPGA image: /usr/share/uhd/images/usrp_b200mini_fpga.bin...ALERT 3337:3337 2019-05-17T12:23:14.2 UHDDevice.cpp:557:open: UHD make failed, device type=b200,name=B200mini,serial=3135A13,product=B200mini
ALERT 3337:3337 2019-05-17T12:23:14.2 runTransceiver.cpp:176:main: Transceiver exiting...

so I was wondering what normally causes this problem and how should I troubleshoot this problem as I have never encountered this error before.

Thank you :blush: