Transcript for #bitcoin-dev 2018/03/03

08:19 FraJah moinings
10:03 dongcarl Has anyone tried building bitcoin against musl?
10:26 arubi dongcarl, I haven't yet but I /think/ bitcoind is available as a package in alpine linux. would be interesting to know how that's set up
10:36 dongcarl arubi: they have musl-gcc, but that's only for C code
10:36 dongcarl for c++ you'd have to have built every dep and libstdc++ with musl from my understanding
10:36 dongcarl So probably only build on alpine haha
10:38 arubi there is musl-cross-make that builds gcc (and g++) for pretty much every platform. it plays really well with mkroot
10:41 arubi dongcarl, https://github.com/richfelker/musl-cross-make , the mkroot readme shows how to set it up. I was able to build an x86_64 environment and boot it with qemu
10:43 arubi I then put the whole gcc package built with musl cross make (mcm) into that. it kinda works but I do want to attach a qcow2 disk to that so I can really start building everything I need
10:48 dongcarl Hmmmm...
10:49 dongcarl So with mkroot we don't even need an additional mkroot container inside the mkroot QEMU?
10:51 arubi right, that's what I think. with the native musl gcc build with mcm and the image built with mkroot, the setup in qemu seems to be a clean one
10:52 arubi also got bash to work both statically built with musl and then dynamically when I moved the gcc stuff into the image too
10:52 dongcarl So we just need to get all the deps to build in mkroot?
10:54 dongcarl Also wondering what cfields thinks about mkroot
10:54 arubi what I did was build the whole mcm outside of mkroot, then mkroot's linux using the mcm gcc package, then copy the native mcm gcc to where mkroot puts its files, and repackage, and boot the result with qemu
10:55 dongcarl Yup that's what I thought. I'm saying the only step left to building bitcoin in it is to be able to make sure the deps build correctly in the mkroot
10:55 arubi ah, yes, correct
10:56 dongcarl arubi: do you have a Makefile or sth? or just playing around rn?
10:56 arubi just playing around
10:57 dongcarl gotcha. I might spend some time getting a script working. any trip ups you've experienced so far?
10:59 arubi well most I was following the mkroot readme, I had to re-run the cpio command from the mkroot setup again manually to package the musl gcc stuff, and also set up a bridge on the host so qemu could get network
11:00 arubi also this https://github.com/robxu9/bash-static for bash
11:01 dongcarl arubi: So let me make sure I understand. You're using mcm to build the qemu mkroot, then you got mcm inside the qemu mcm?
11:01 dongcarl inside the qemu mkroot*
11:01 dongcarl Just started looking at this today
11:01 arubi yes, mcm will build it so you can just drop it in /usr that mkroot creates
11:02 dongcarl Hmmmm. How are you getting files into the QEMU image? I've been just supplying files as -hda and cp-ing /dev/?da
11:02 arubi I changed the symlinks in mkroot so /usr is its own directory and, placed musl's libc.so in mkroot's /lib
11:03 arubi ah I was re-running the cpio package command from mkroot, no hard drives
11:03 arubi for some reason I can't get qemu to load a drive image :\
11:03 dongcarl you can make it load a file as a "drive" lol
11:03 dongcarl hmmm cpio package command... looking...
11:04 arubi I know but I'm getting errors, I forgot what it was
11:04 arubi you just made me want to look at this again though :)
11:04 dongcarl where did you find the cpio package command?
11:05 dongcarl Hahaha yay I'd be happy to be rid of Canonical
11:05 dongcarl and apologies if I ask dumb questions
11:05 arubi from the module/kernel file , line 354
11:05 arubi not at all dumb questions, I'm exploring this for the first time myself :)
11:06 dongcarl I see, you modified that script a little to include your files?
11:06 dongcarl mcm?
11:07 dongcarl (I guess you could put a sleep 99999 before it gzips it up and put things in $ROOT as well
11:07 dongcarl )
11:07 dongcarl At some point it should be a module tho right?
11:07 dongcarl Like make mcm into a module, and bitcoin a module?
11:07 arubi I really just re-ran the command after changing the symlinks it creates the first time and copying the mcm stuff. my end goal was just getting a simple setup, load a drive image, and copy stuff over the network
11:09 arubi bitcoin as a module is interesting, I thought to build it inside qemu
11:09 dongcarl Gotcha
11:09 dongcarl Yeah no you're right
11:09 dongcarl modules are built out of container
11:09 dongcarl container/QEMU
11:10 arubi yea so mcm as one makes sense. really all it would be is copy the files, since you've built them all prior with mcm itself
11:11 dongcarl Yeah makes sense. Aight I might DM you if I have new discoveries. Danke schon.
11:11 arubi cheers
12:21 nightlingo do I need to have a fully synced full node in order to execute bitcoin-cli commands?
14:14 mmgen nightlingo: no
14:15 mmgen nightlingo: but they might block for a long time if your node's syncing
16:24 ProfMac what are people's thoughts on SQLite?
17:30 nightlingo mmgen: thank you!