create account

Building EOS by philmesnier

View this thread on: hive.blogpeakd.comecency.com
· @philmesnier ·
$115.22
Building EOS
![Screen Shot 2017-05-30 at 1.04.08 AM.png](https://steemitimages.com/DQmacp6D3jaZb4qu7R2Ynh5msQ8vCiJEqj7TS8ZmnGiKUK7/Screen%20Shot%202017-05-30%20at%201.04.08%20AM.png)
Yes it's true, the EOS code is available for all to clone/fork.

Here's a couple of quick notes on things I stumbled getting this first round to build. Note, I am assuming you have a basic understanding of how to use git, cmake, etc.

1. Remember to fetch submodules, this is your 1-2 punch before doing anything else :
 `git clone https://github.com/EOSIO/eos.git`
 `git submodule update --init --recursive`

2. I am using a mac to build, so initially I tried `cmake -G Xcode` but ran into too many issues so I switched to  `cmake -G "Unix Makefiles"` in a separate workspace. 

3. This could be Xcode related but I couldn't use OpenSSL 1.1.0f, I had to revert to OpenSSL 1.0.2. 

4. there are several directories currently flagged as `[incomplete][no build]`. These may
contain non-compiling code. Use "make -k" or whatever "keep compiling after an error" option is available for your build environment.

5. the latest code is in the "refactor" branch.

6. Nothing runs yet, so refrain from pelting @dantheman and @modprobe with complaints about non-running code. Be happy @dantheman elected to pull back the curtain so early on to allow the world to watch and contribute as EOS is made.

Finally, a nod to @modprobe for creating the #qwoa "quick word of advice" tag. This may not be as life changing as debugging your space with a flashlight, but it is a qwoa!

Cheers!
-Phil
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , and 20 others
properties (23)
authorphilmesnier
permlinkbuilding-eos
categoryeos
json_metadata{"tags":["eos","qwoa","beyondbitcoin"],"users":["dantheman","modprobe"],"image":["https://steemitimages.com/DQmacp6D3jaZb4qu7R2Ynh5msQ8vCiJEqj7TS8ZmnGiKUK7/Screen%20Shot%202017-05-30%20at%201.04.08%20AM.png"],"app":"steemit/0.1","format":"markdown"}
created2017-05-30 06:22:57
last_update2017-05-30 06:22:57
depth0
children5
last_payout2017-06-06 06:22:57
cashout_time1969-12-31 23:59:59
total_payout_value88.818 HBD
curator_payout_value26.399 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,548
author_reputation1,115,071,019,677
root_title"Building EOS"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id3,948,244
net_rshares13,730,049,293,198
author_curate_reward""
vote details (84)
@lautenglye ·
resteem and upvote for you
👍  ,
properties (23)
authorlautenglye
permlinkre-philmesnier-building-eos-20170530t074841011z
categoryeos
json_metadata{"tags":["eos"],"app":"steemit/0.1"}
created2017-05-30 07:49:54
last_update2017-05-30 07:49:54
depth1
children2
last_payout2017-06-06 07:49:54
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length26
author_reputation1,745,262,632,168
root_title"Building EOS"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id3,950,056
net_rshares1,406,367,400
author_curate_reward""
vote details (2)
@philmesnier ·
Thank you!
👍  
properties (23)
authorphilmesnier
permlinkre-lautenglye-re-philmesnier-building-eos-20170530t103621107z
categoryeos
json_metadata{"tags":["eos"],"app":"steemit/0.1"}
created2017-05-30 10:36:21
last_update2017-05-30 10:36:21
depth2
children1
last_payout2017-06-06 10:36:21
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length10
author_reputation1,115,071,019,677
root_title"Building EOS"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id3,953,387
net_rshares0
author_curate_reward""
vote details (1)
@lautenglye ·
u r welcome...
properties (22)
authorlautenglye
permlinkre-philmesnier-re-lautenglye-re-philmesnier-building-eos-20170530t235057131z
categoryeos
json_metadata{"tags":["eos"],"app":"steemit/0.1"}
created2017-05-30 23:52:09
last_update2017-05-30 23:52:09
depth3
children0
last_payout2017-06-06 23:52:09
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length14
author_reputation1,745,262,632,168
root_title"Building EOS"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id3,976,555
net_rshares0
@modprobe ·
$1.01
!! Uhh, the code is public now? Oh, dear. :P OK, I thought I'd have another day or so to write docs... Guess I'll get started on that next. Haha

In the meantime... Thanks so much for writing this up, Phil! :D Some comments on your steps:

1. Yes, indeed, the submodules are all-important and nothing will work without them. If you attempt to run cmake before fetching submodules, you'll see errors like "XYZ directory does not contain a CMakeLists.txt" or errors mentioning "GetGitRevisionDescription". If you see errors like this, make sure you fetched your submodules. You can fetch all the code, submodules included, in a single command with:
```git clone https://github.com/eosio/eos --recursive```

2. I'm not testing things on Mac, and people who do haven't touched the code since the conference, so YMMV with XCode. :P Fwiw, I usually use `-G Ninja` but Makefiles should work just fine too (and are supported, so if they don't, let me know)!

3. Yes, unfortunately our P2P code still uses a bunch of tech that hasn't been updated in too long, and for now we have to use OpenSSL 1.0.2... Replacing the P2P code is a priority for me personally, but it's also quite a bit of work. :P

4. The branch called "refactor" that was splattered with "[INCOMPLETE] [NO BUILD]" warnings was indeed more recent code, but not actually intended to be used quite yet, so much as looked at to give an idea of where I was going on my recent refactoring adventure. :P

5. Hopefully as of last night, that branch is building and more or less working again, so I'll merge it back in soon.

Of course I'll write up some proper build docs showing how to get some nodes up and running and making blocks, but this comment made a nice warm-up round. :D
👍  , , , , , , , , ,
properties (23)
authormodprobe
permlinkre-philmesnier-building-eos-20170530t141513577z
categoryeos
json_metadata{"tags":["eos"],"app":"steemit/0.1"}
created2017-05-30 14:15:15
last_update2017-05-30 14:15:15
depth1
children1
last_payout2017-06-06 14:15:15
cashout_time1969-12-31 23:59:59
total_payout_value0.762 HBD
curator_payout_value0.246 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,733
author_reputation57,055,357,664,878
root_title"Building EOS"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id3,959,065
net_rshares463,185,123,731
author_curate_reward""
vote details (10)
@philmesnier ·
$2.39
Hi Nathan,

Thanks for the comments. As for the public release, I did not breach confidence, someone else did. Dan made it public so that I and presumably others  could access the repository. He also correctly predicted that someone would make an announcement. See: https://steemit.com/eos/@clayop/eos-code-is-now-on-github

I slapped together these notes to hopefully stem the inevitable tide of "how do I build it" questions. Not that it will work though. :-)
👍  ,
properties (23)
authorphilmesnier
permlinkre-modprobe-re-philmesnier-building-eos-20170530t142609307z
categoryeos
json_metadata{"tags":["eos"],"links":["https://steemit.com/eos/@clayop/eos-code-is-now-on-github"],"app":"steemit/0.1"}
created2017-05-30 14:26:09
last_update2017-05-30 14:26:09
depth2
children0
last_payout2017-06-06 14:26:09
cashout_time1969-12-31 23:59:59
total_payout_value1.796 HBD
curator_payout_value0.598 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length461
author_reputation1,115,071,019,677
root_title"Building EOS"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id3,959,379
net_rshares985,243,327,021
author_curate_reward""
vote details (2)