Struggling with QuickStart Guide on MacOS

Just joined this list and I’m trying to play with RIOT for the first time on MacOS. I'm not having luck with the quickstart guide.

First of all, i think the 2nd and 3rd steps are reversed. It seems you should cd into RIOT before doing a checkout of release.

And is this checkout step even needed? i assume latest master is correct, since there’s no hint anywhere what the LATEST_RELEASE would be.

Past that, when I run tapsetup, I first get a password prompt (I assume it needs to do sudo-ish things). And then the only thing it spits out is this:

./dist/tools/tapsetup/tapsetup creating bridge0 Password: ifconfig: SIOCIFCREATE2: File exists

I’m not clear if that’s fatal or just a warning? Do I need to fix something here before I continue?

Finally, when I make all; make term, I get some warnings. The one that worries me most is:

/Users/travisg/Downloads/RIOT/cpu/Makefile.include.gnu:14: objcopy not found. Hex file will not be created.

Is that bad? Or is that OK because I’m running locally?

Anyway, right after that I get the following error:

/Users/travisg/Downloads/RIOT/examples/default/bin/native/default.elf: open(/dev/tap0): No such file or directory

This leads me to believe that there was indeed fatal problems with the tapsetup script. But I really don’t know. Any hints/pointers?


Please check if you have all prerequisites:

Yes, the command order is reversed, great opportunity for your first PR right there.

Latest master vs. latest release: your choice. Releases get more thorough testing. They are tagged in git and also available for download on GitHub.

The objcopy error sounds like a harmless error (it's a cosmetic step) and the others might indeed be more interesting. Care to paste?

"ifconfig: SIOCIFCREATE2: File exists" Sounds like you are either already using a tap setup for something else, or it's a leftover from a previous run. Clean up by using the remove option of the tapsetup script.

In general Linux support is more robust. You can use vagrant to create a virtual Linux environment.

Cheers, Ludwig


For the objcpy problem, you can try to install gobjcopy according to [1].

Anyways, you can always run the elf file directly, since it’s a valid executable.