How to execute "gnrc_networking"

Dear RIOT users,

Hello. I am a new comer to RIOT OS. Recently I downloaded the latest version RIOT-2016.10 and tried to execute some examples.

At first I tried the “default” example. It is executed with no problem. Next, tried the “gnrc_networking” example. It caused a trouble as following,

First, created a tap interface,

sudo ip tuntap add tap0 mode tap user ${USER} sudo ip link set tap0 up

Then, started the “gnrc_networking” by invoking as

PORT=tap0 make term

The following messages were displayed. The program was started but segmentation fault was caused

/home/user/Desktop/RIOT-2016.10/examples/gnrc_networking/bin/native/gnrc_networking.elf tap0 RIOT native interrupts/signals initialized. LED_RED_OFF LED_GREEN_ON RIOT native board initialized. RIOT native hardware initialization complete.

make: *** [term] Segmentation fault (core dumped)

Why is this problem occur?.

My development environment is

Ubuntu12.04 (is guest OS on host OS windows7)

In the gnrc_networking/README.md, “Ununtu14.04 comes with netcat IPv6 support pre-installed.” Is written. Is this problem caused by that netcat is not installed or unsuitable for Ubuntu12.04 ?.

If so, are there any solutions to execute “gnrc_networking” on Ubuntu12.04 ?. My PC is Windows7. It may be impossible to upgrade to Ubuntu14.04.

Dicek Bear

Hello Dicek,

I couldn't reproduce the segfault on my system (Arch) with RIOT-2016.10. Can you provide the core dump file? This way, we would at least know where the crash occured. If no dump file is generated, then you can also run `PORT=tap0 make debug` instead of `PORT=tap0 make term`. This command will start your binary in gdb and you can run RIOT by typing `run` in the gdb shell. In this mode, more information regarding the segfault should be displayed.

BTW, Ubuntu12.04 is pretty old (: Do you have experience with Vagrant[1]? There is a Vagrantfile in RIOT's root directory, which can be used to jump-start a RIOT VM (Ubuntu16.04) with all necessary tools pre-installed. You can find more information here [2].

[1] https://www.vagrantup.com/ [2] https://github.com/RIOT-OS/RIOT/blob/master/dist/tools/vagrant/README.md

Cheers, Cenk Gündoğan

Dear Cenk,

Thank you for important information about my RIOT-2016.10 problem. As you say, I found core dump file, but it was not generated. Next step, I ran “PORT0=tap0 make debug” , and start RIOT program by typing ‘run’ in the (gdb) shell. The following messages are displayed.

Starting program: /home/user/Desktop/RIOT-2016.10/examples/gnrc_networking/bin/native/gnrc_networking.elf tap0 RIOT native interrupts/signals initialized. LED_RED_OFF LED_GREEN _ON RIOT native board initialized. RIOT native hardware initialization complete.

Program received signal SIGSEGV, Segmentation fault. 0x00000000 in ?? ()

In the “signup.h” file, ‘SIGSEGV’ means ‘Segmentation violation’. It is a only information in the (gdb) shell display. What does ‘0x00000000 in ?? ()’ mean ?.

Anyway it may be difficult to execute RIOT2016.10 on the Ubuntu 12.04. I have not experienced Vagrant. If all necessary tools are pre-installed, It it helpful for me. I try to install Vagrant.

Thank you, Dicek Bear

Hi Dicek!

Dear Oleg,

Thank you. I stop trying Ubuntu 12.04. If some problems occur in Vagrant & Ubuntu 16.04, I will ask riot-users again.

Dicek Bear

Dear Cenk, Oleg and RIOT-users,

Thank you for your support. Now I tried to install Virtual box version 5.1.12r112440 and vagrant_1.9.1 in Windows7 PC. Installation of them was successed. Then I opened command prompt window and change directory into RIOT root. At first I set a command to start Vagrant as following,

Vagrant up

Error message displayed,

Bringing machine ‘default’ up with ‘virtual box’ provider… ==> default: Box ‘RIOT/ubuntu1604’ could not be found. Attempting to find and install… default: Box Provider: virtual box default: Box version: >= 0 The box ’ RIOT/ubuntu1604’ could not be found or could not be accessed in the remote catalog. If this is a private box of HashiCorp’s Atlas, please verify you’re logged in via ‘vagrant login’. Also, please double-check the name. The expanded URL and error message are shown below:

URL: [“https://atlas.hashicorp.com/RIOT/ubuntu1604”] Error: Failed to connect atlas.hashicorp.com port 443: Timed out

The displayed URL and port number 443 directs a address of “RIOT/ubuntu1604 box file”, doesn’t it ?. In my PC environment, it is impossible to connect Internet, because company security does not allow access Internet.

Can we download ‘RIOT/ubuntu1604 box file’ manually ?. I tried to access the URL, but It was necessary to input username and password.

Are there any methods to install and use Vagrant(Ubuntu1604) with Internet disconnected environment ?.

Regards, Dicek Bear.