How to build MaidSafe on Odroid-U3 (Ubuntu 14.04 LTS)?


#1

Posting here temprorarily so someone can add to the Wiki (or enable theWebalyst for that on github and I’ll do it).

If this is put into the Wiki, this FAQ can be altered to "How do I build the MaidSafe software? with a pointer to [MaidSafe Build Instructions for all machines][1].

How To Build MaidSafe on Odroid-U3

These instructions assume Ubuntu 14.04 LTS (the official Odroid-U3 Linux image as of July 2014).

This was a breeze thanks to @Ross and Ubuntu 14.04! :slight_smile:

See also MaidSafe Build Instructions:            https://github.com/maidsafe/MaidSafe/wiki/Build-Instructions-for-Linux

Prepare Build Environment

sudo apt-get update
sudo apt-get install clang-3.5 cmake

sudo apt-get install build-essential python-psutil libfuse-dev git-all libicu-dev valgrind binutils-gold

Set-up Github Access

Create SSH keys for github. Follow the instructions here: Ref: https://help.github.com/articles/generating-ssh-keys

Then…

ssh-add ~/.ssh/id_rsa
sudo apt-get install xclip
xclip -sel clip < ~/.ssh/id_rsa.pub

log into http://github.com
At github.com > Account Settings > SSH Keys
Set a label e.g. odroid-duey
Paste in the key
Click Add

Test on client:

ssh -T git@github.com

Grab The Code

From here on I give timings for some commands. All are based on Odroid-U3 with 64GB eMMC.

The following command takes ~10 minutes:

git clone git@github.com:maidsafe/MaidSafe

The following command takes ~10 minutes:

git -C MaidSafe submodule update --init

Create Build Makefile

The following command takes ~15 minutes including full boost libraries download.
Note: 5 mins in it needs your SSH key password:

cmake -H<path to MaidSafe root> -Bbuild_maidsafe -DCMAKE_BUILD_TYPE=Debug  -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang

Build MaidSafe

The following command takes about 2hrs:

cd build_maidsafe
make

Try Running The Tests

To run tests on a module, and automatically submit them to the Public Dashboard
make Exper

Try:

make ExperCommon

Wooo hoo, “duey” appears in dashboard with all tests passed.
[1]: https://github.com/maidsafe/MaidSafe/wiki


Best farming hardware
MaidSafe Korea: Updates and Questions
ISO & website for Odroid Safe Vault?
#2

Thanks for this @happybeing

Allthough i don’t have a Odroid-U3 this gives some rough sketches how it got to be done on another device.

:stuck_out_tongue:

@fergish was asking for a “Barebones linux image for dedicated farmer nodes”


I built MaidSafe, now what?
#3

Thanks Mark, I’ll play with this over the weekend…I have a spare athlon machine… The should be ok as a start…

So, is this the farming node now?


#4

It’s the whole shabang - but of course there is no real farming until the network is live. This is code under development. If you are building on different machine hardware or OS, please see the MaidSafe Build Instructions link. This topic is specifically for the Odroid-U3 running Ubuntu 14.04 LTS.


#5

cool… can’t wait for the farming vault sw…

It looks like Odroid-U3 is a powerful little machine…


#6

Yes it is. They have a couple of other models which are slightly higher spec USB3 for example, and maybe a little more processing power but they are quite a bit more expensive, and in any case have a fan and I wanted a silent device. Seeing how quick it is building etc I think the U3 should do pretty well.


#7

Did you use an emmc of micro sd for the OS?

Would be sexy if I have a couple of these stacked up to run the vault software in the future. I’ll start with one… see how it goes.


#8

I bought two U3’s with 64G eMMC but I’m also going to try adding a big disk. I recommend you get the case too (its basic but pretty neat).


#9

Hello happybeing,

First of all thank you for making this guide.

I am stuck somewhere in the middle at this “Create Build Makefile” step. I have no idea what to input at the “path to MaidSafe root”.

I bought the U3 especially to run the MaidSafe network, but I don’t have any Linux experience. Everything was going well following your guide until getting stuck at this step.

When I open my file manager it shows a map at this location: /home/odroid/MaidSafe

Maybe this will help you pointing me in the right direction? I’m also curious if this setup makes me ready for the coming beta and final release or will I need to reinstall when that time comes.

Do I need to update the install regularly after I’ve finished the steps in your guide and if so how will I do that?


#10

Prolly $HOME/MaidSafe and later (for make) $HOME/MaidSafe/build_maidsafe
The instructions are missing cd steps.


#11

Thank you Janitor. I used the paths you gave and succesfully completed the build and the test a couple of minutes ago :slight_smile:


#12

Happybeing: Are you in the UK? If so what was the total cost inc delivery for your kit, please?
How long was the delivery?


#13

Yes I’m in UK.

To be honest I can’t recall exactly how long it took. When I first ordered the order was initially accepted, but rejected a couple days because they didn’t have stock and told me to re-order on a certain date (a couple of weeks later) which I did. The kit was then shipped fairly promptly and arrived in a reasonably time one to two weeks I guess (they use UPS for the $25 shipping fee).

I bought quite a mix of stuff so best you just tot up what you want, add the $25 shipping fee and do a USD to GBP conversion. There were no surprises in the fee and I can say they are a helpful bunch, also at the odroid forum.


#14

Great stuff and thanks @janitor - I’ve had very little time to spend on the forum for the last week so I’m glad you got it sorted.

Its great to have more Odroids! I haven’t had time to play since I got it built, but what I’ve written about what you can do still stands AFAIK but should change soon with the advent of testnet2 and the release of some early apps - so watch for info on those.

I confess that I don’t know how to update the source to that latest version and will have to figure that out when I get back to my Odroids, but it is a fairly simple “git” command or two that has been mentioned here or there. I just can’t give the answer myself sorry.