Building AllSeen Alliance’s Alljoyn Core on Raspberry Pi

One of the little development wonders that I have really enjoyed working with lately is the Raspberry Pi. It’s a great little, very capable computer that has lots of 3rd party add-ons available for it. In fact, it has developed quite the ecosystem in just the couple of years it has been around. If you wish to use it as a platform for IoT development, then you have to seriously consider using the Alljoyn stack from AllSeen Alliance (@allseenalliance). Getting up and running for the first time can be a bit daunting as there are numerous options when you first walk through the git repository. So, here’s a little cheat sheet for getting up and running fast and building the core services. Bear in mind that I am working with the latest version of Raspbian, which is the Pi’s version of Debian, and 14.06 beta release of Alljoyn.

I’d like to give a special shout out to Joe Speed (@joespeed) of Linux Foundation (@linuxfoundation) for the pointer to a site out of China. Hopefully between our two write-ups you can get up and running with little to no pain.


Here we go:

  • sudo apt-get install build-essential
  • sudo apt-get install maven
  • sudo apt-get install scons
  • sudo apt-get install git
  • sudo apt-get install curl
  • sudo apt-get install openssl
  • sudo apt-get install libssl-dev
  • sudo apt-get install libjson0
  • sudo apt-get install libjson0-dev
  • mkdir ~/bin
  • echo “export PATH=$PATH:~/bin” >> ~/.bashrc
  • curl > ~/bin/repo
  • chmod a+x ~/bin/repo
  • source ~/.bashrc
  • mkdir -p ~/WORKING_DIRECTORY/alljoyn
  • cd ~/WORKING_DIRECTORY/alljoyn
  • git config —global “[your name]”
  • git config —global “[your email address]”
  • repo init -u
  • repo sync
  • export AJ_ROOT=$(pwd)
  • sudo ln -s /usr/bin/g++ /usr/bin/arm-angstrom-linux-gnueabi-g++
  • sudo ln -s /usr/bin/gcc /usr/bin/arm-angstrom-linux-gnueabi-gcc
  • scons OS=linux CPU=arm WS=off OE_BASE=/usr
  • sudo ln -sf ~/WORKING_DIRECTORY/alljoyn/core/alljoyn/alljoyn_core/build/linux/arm/debug/dist/cpp/lib/ /lib/arm-linux-gnueabihf/
  • cd ~/WORKING_DIRECTORY/alljoyn/core/alljoyn/alljoyn_core/build/linux/arm/debug/dist/cpp/bin
  • ldd alljoyn-daemon
  • ./alljoyn-daemon –version

After executing alljoyn-daemon –version, you should see something like the following:

AllJoyn Message Bus Daemon version: v0.0.1

Copyright (c) 2009-2014 AllSeen Alliance.

Build: AllJoyn Library v0.0.1 (Built Wed Jul 16 19:20:47 UTC 2014 by myoung – Git: alljoyn branch: ‘(no branch)’ tag: ‘v14.06rc3’ (+68 changes) commit ref: 645991ec7c1762ade3a33cc6dbaae7e6aba65195)

Now you should be up and running with Alljoyn on your Pi.




One thought on “Building AllSeen Alliance’s Alljoyn Core on Raspberry Pi

Leave a Reply

Your email address will not be published. Required fields are marked *