lbryio / lbrycrd

The blockchain that provides the digital content namespace for the LBRY protocol
https://lbry.com
MIT License
2.58k stars 178 forks source link

precompiled vs. docker build #414

Open juanpc2018 opened 2 years ago

juanpc2018 commented 2 years ago

Pre-compiled @BrannonKing @BrannonKing v0.17.3.3 Apr 30, 2021 7afc4c4 v0.17.3.3 - small update

$ ./lbrycrdd --help
LBRYcrd Core Daemon version v0.17.3.3-7afc4c4

docker build: Nov 26, 2021 71fc94b1d

$ git clone https://github.com/lbryio/lbrycrd.git
$ cd lbrycrd
$ docker run -v "$(pwd):/lbrycrd" --rm -v "${HOME}/ccache:/ccache" -w /lbrycrd -e CCACHE_DIR=/ccache lbry/build_lbrycrd packaging/build_linux_64bit.sh

$ ./lbrycrdd --help
LBRYcrd Core Daemon version v0.17.3.3-71fc94b1d

Precompiled edit, has a default cache size change, when cache is very big 16000 takes more time to save on exit, Ctrl+C and requires ECC memory to avoid errors. a change from 600 to 500 is basically "the same" same happens in Windows with Virtual Memory pagefile.sys size. 800MB reboot & shutdowns fast, "minimum recomended by Windows" 80MB shutdowns much faster. 8000MB very slow shutdown / reboot.

in Bitcoin, cache is filled because CPU is Not fast enough indexing, creating chainstate fast cores vs. more cores dilema... i bet <10-fast. LOL.™ https://www.cpu-monkey.com/es/cpu_benchmark-cinebench_r23_single_core-15 https://www.cpu-monkey.com/es/cpu_benchmark-cinebench_r20_single_core-9 https://www.cpu-monkey.com/es/cpu_benchmark-cinebench_r15_single_core-7


the second "last" edit, 71fc94b1d web source change to: https://boostorg.jfrog.io/artifactory/main/release/ 1.69.0/ 07-Apr-2021

but latest is: 1.80.0/ 04-Aug-2022

boost_1_80_0.tar.bz2 04-Aug-2022 03:20 110.50 MB

updating source to 1.80.0 gives compile error:

touch /lbrycrd/depends/work/build/x86_64-pc-linux-gnu/boost/1_80_0-ae91bd411f0/./.stamp_configured
echo Building boost...
Building boost...
mkdir -p /lbrycrd/depends/work/build/x86_64-pc-linux-gnu/boost/1_80_0-ae91bd411f0/.
cd /lbrycrd/depends/work/build/x86_64-pc-linux-gnu/boost/1_80_0-ae91bd411f0/.; PATH=/lbrycrd/depends/x86_64-pc-linux-gnu/native/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin   ./b2 -d2 -j`getconf _NPROCESSORS_ONLN` -d1 --reconfigure --prefix=/lbrycrd/depends/work/staging/x86_64-pc-linux-gnu/boost/1_80_0-ae91bd411f0/lbrycrd/depends/x86_64-pc-linux-gnu --layout=tagged --build-type=complete --user-config=user-config.jam threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1 boost.locale.iconv=off boost.locale.posix=off boost.locale.icu=on boost.locale.std=off -sICU_PATH="/lbrycrd/depends/x86_64-pc-linux-gnu" -sICU_LINK="-time" variant=release   threadapi=pthread runtime-link=shared    stage
error: at libs/regex/build/Jamfile.v2:38
error: The ICU_LINK option is no longer supported by the Boost.Regex build - please refer to the documentation for equivalent options

funcs.mk:242: recipe for target '/lbrycrd/depends/work/build/x86_64-pc-linux-gnu/boost/1_80_0-ae91bd411f0/./.stamp_built' failed
make: *** [/lbrycrd/depends/work/build/x86_64-pc-linux-gnu/boost/1_80_0-ae91bd411f0/./.stamp_built] Error 1

same as here: https://github.com/boostorg/regex/issues/89 https://forums.linuxmint.com/viewtopic.php?t=328261 https://fossies.org/linux/boost/libs/regex/build/Jamfile.v2 https://github.com/boostorg/locale/issues/55

BrannonKing commented 2 years ago

The docker builds are separate from the lbrycrd compilation. I'm not even sure who maintains the docker builds or if there are any official ones. There's no point to using docker with lbrycrd as it's already statically compiled.

And you're complaining about the ccache cache size? That's all in your control.

As for supporting Boost v80, feel free to put in a PR.