Concordium / concordium-node

The main concordium node implementation.
GNU Affero General Public License v3.0
45 stars 22 forks source link

failed to run build for Concordium node #249

Closed roma4u closed 2 years ago

roma4u commented 2 years ago

New Ubuntu 18.04 setup

apt update
apt upgrade
curl https://sh.rustup.rs -sSf | sh
apt install build-essential
apt-add-repository ppa:hnakamur/flatbuffers
apt update 
apt install -y flatbuffers-compiler
git clone https://github.com/Concordium/concordium-node.git 
cd concordium-node/ && git submodule update --init
cd concordium-node/
cargo build --release
# rustc --version
rustc 1.58.1 (db9d1b20b 2022-01-20)

I get an error:

   Compiling tracing-futures v0.2.5
   Compiling tonic-build v0.4.2
   Compiling tokio-util v0.6.7
   Compiling tokio-stream v0.1.7
   Compiling concordium_node v3.0.0 (/root/concordium-node/concordium-node)
   Compiling h2 v0.3.3
   Compiling tower v0.4.8
error: failed to run custom build command for `concordium_node v3.0.0 (/root/concordium-node/concordium-node)`

Caused by:
  process didn't exit successfully: `/root/concordium-node/concordium-node/target/release/build/concordium_node-c2e9678b2c9719f8/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-changed=/root/concordium-node/concordium-node/src/network/serialization/schema.fbs
  cargo:rerun-if-changed=/root/concordium-node/concordium-node/../concordium-grpc-api/concordium_p2p_rpc.proto

  --- stderr
  thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', build.rs:12:34
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: build failed

Verbose:

   Compiling tower v0.4.8
     Running `rustc --crate-name tower --edition=2018 /root/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.8/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 --cfg 'feature="balance"' --cfg 'feature="buffer"' --cfg 'feature="default"' --cfg 'feature="discover"' --cfg 'feature="futures-util"' --cfg 'feature="indexmap"' --cfg 'feature="limit"' --cfg 'feature="load"' --cfg 'feature="log"' --cfg 'feature="make"' --cfg 'feature="rand"' --cfg 'feature="ready-cache"' --cfg 'feature="slab"' --cfg 'feature="timeout"' --cfg 'feature="tokio"' --cfg 'feature="tokio-stream"' --cfg 'feature="tokio-util"' --cfg 'feature="tracing"' --cfg 'feature="util"' -C metadata=9dc6635c05edec08 -C extra-filename=-9dc6635c05edec08 --out-dir /root/concordium-node/concordium-node/target/release/deps -L dependency=/root/concordium-node/concordium-node/target/release/deps --extern futures_core=/root/concordium-node/concordium-node/target/release/deps/libfutures_core-031cf24819da4f9f.rmeta --extern futures_util=/root/concordium-node/concordium-node/target/release/deps/libfutures_util-8f052ffbdcc722cb.rmeta --extern indexmap=/root/concordium-node/concordium-node/target/release/deps/libindexmap-1f2333052419e12b.rmeta --extern pin_project=/root/concordium-node/concordium-node/target/release/deps/libpin_project-e7be7ccbdaf5c8a8.rmeta --extern rand=/root/concordium-node/concordium-node/target/release/deps/librand-1990b81fdda5cf88.rmeta --extern slab=/root/concordium-node/concordium-node/target/release/deps/libslab-f58deafe0949890d.rmeta --extern tokio=/root/concordium-node/concordium-node/target/release/deps/libtokio-9cf8aedfe7122c99.rmeta --extern tokio_stream=/root/concordium-node/concordium-node/target/release/deps/libtokio_stream-20202fb6ef1ec24c.rmeta --extern tokio_util=/root/concordium-node/concordium-node/target/release/deps/libtokio_util-53260ca9709ac569.rmeta --extern tower_layer=/root/concordium-node/concordium-node/target/release/deps/libtower_layer-b879497fc67ced85.rmeta --extern tower_service=/root/concordium-node/concordium-node/target/release/deps/libtower_service-5d28fb0b99baedc1.rmeta --extern tracing=/root/concordium-node/concordium-node/target/release/deps/libtracing-f415f91a97248759.rmeta --cap-lints allow`
     Running `/root/concordium-node/concordium-node/target/release/build/concordium_node-c2e9678b2c9719f8/build-script-build`
error: failed to run custom build command for `concordium_node v3.0.0 (/root/concordium-node/concordium-node)`

Caused by:
  process didn't exit successfully: `/root/concordium-node/concordium-node/target/release/build/concordium_node-c2e9678b2c9719f8/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-changed=/root/concordium-node/concordium-node/src/network/serialization/schema.fbs
  cargo:rerun-if-changed=/root/concordium-node/concordium-node/../concordium-grpc-api/concordium_p2p_rpc.proto

  --- stderr
  thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', build.rs:12:34
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: build failed
roma4u commented 2 years ago
# cargo build --release --features=static
...
   Compiling h2 v0.3.3
   Compiling tower v0.4.8
   Compiling hyper v0.14.10
   Compiling tonic v0.4.3
error: could not find native static library `Rcrypto`, perhaps an -L flag is missing?

error: aborting due to previous error

error: could not compile `concordium_node`

To learn more, run the command again with --verbose.
abizjak commented 2 years ago

The static feature is complicated to use since it requires specially built static Haskell libraries. We use the following scripts to build and link https://github.com/Concordium/concordium-node/tree/main/scripts/static-binaries

Regarding your previous failures, it looks like you do not have the protobuf installed which is why your previous attempts fail. I also do not see that you have installed it.

Could you

abizjak commented 2 years ago

I would also recommend running ubuntu 20.04 if you have the option.

roma4u commented 2 years ago

Same on ubuntu 20.04

curl https://sh.rustup.rs -sSf | sh source $HOME/.cargo/env apt install build-essential apt-add-repository ppa:hnakamur/flatbuffers apt install flatbuffers-compiler apt install protobuf-compiler git clone https://github.com/Concordium/concordium-node.git cd concordium-node/ && git submodule update --init cd concordium-node/ cargo build --release


       Fresh tracing-futures v0.2.5
       Fresh tonic-build v0.4.2
       Fresh ed25519-dalek v1.0.1
       Fresh tokio-util v0.6.7
       Fresh tokio-stream v0.1.7
       Fresh pairing v0.15.1
       Fresh h2 v0.3.3
       Fresh tower v0.4.8
   Compiling hyper v0.14.10
   Compiling concordium_node v3.0.0 (/root/concordium-node/concordium-node)
   Compiling crypto_common v0.1.0 (/root/concordium-node/concordium-base/rust-src/crypto_common)
     Running `rustc --crate-name hyper --edition=2018 /root/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.10/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --crate-type staticlib --crate-type cdylib --emit=dep-info,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 --cfg 'feature="client"' --cfg 'feature="default"' --cfg 'feature="full"' --cfg 'feature="h2"' --cfg 'feature="http1"' --cfg 'feature="http2"' --cfg 'feature="runtime"' --cfg 'feature="server"' --cfg 'feature="socket2"' --cfg 'feature="stream"' --cfg 'feature="tcp"' -C metadata=bce34690f48ebecc -C extra-filename=-bce34690f48ebecc --out-dir /root/concordium-node/concordium-node/target/release/deps -L dependency=/root/concordium-node/concordium-node/target/release/deps --extern bytes=/root/concordium-node/concordium-node/target/release/deps/libbytes-253ce136e8f5f87a.rlib --extern futures_channel=/root/concordium-node/concordium-node/target/release/deps/libfutures_channel-8f2da10b898764d9.rlib --extern futures_core=/root/concordium-node/concordium-node/target/release/deps/libfutures_core-031cf24819da4f9f.rlib --extern futures_util=/root/concordium-node/concordium-node/target/release/deps/libfutures_util-8f052ffbdcc722cb.rlib --extern h2=/root/concordium-node/concordium-node/target/release/deps/libh2-73ea10ef797e30dc.rlib --extern http=/root/concordium-node/concordium-node/target/release/deps/libhttp-c6a26264b584842b.rlib --extern http_body=/root/concordium-node/concordium-node/target/release/deps/libhttp_body-caeb7762216a8bed.rlib --extern httparse=/root/concordium-node/concordium-node/target/release/deps/libhttparse-c3cef2bafc72ebfd.rlib --extern httpdate=/root/concordium-node/concordium-node/target/release/deps/libhttpdate-ed17d06ad44fd632.rlib --extern itoa=/root/concordium-node/concordium-node/target/release/deps/libitoa-4175a1c879b17856.rlib --extern pin_project_lite=/root/concordium-node/concordium-node/target/release/deps/libpin_project_lite-95485efcbd38b059.rlib --extern socket2=/root/concordium-node/concordium-node/target/release/deps/libsocket2-4551d08ea63c7092.rlib --extern tokio=/root/concordium-node/concordium-node/target/release/deps/libtokio-9cf8aedfe7122c99.rlib --extern tower_service=/root/concordium-node/concordium-node/target/release/deps/libtower_service-5d28fb0b99baedc1.rlib --extern tracing=/root/concordium-node/concordium-node/target/release/deps/libtracing-f415f91a97248759.rlib --extern want=/root/concordium-node/concordium-node/target/release/deps/libwant-517e888523f2310f.rlib --cap-lints allow`
     Running `/root/concordium-node/concordium-node/target/release/build/concordium_node-c2e9678b2c9719f8/build-script-build`
     Running `rustc --crate-name crypto_common --edition=2018 /root/concordium-node/concordium-base/rust-src/crypto_common/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type rlib --crate-type staticlib --crate-type cdylib --emit=dep-info,link -C opt-level=3 -C embed-bitcode=no -C codegen-units=1 --cfg 'feature="aes"' --cfg 'feature="base64"' --cfg 'feature="block-modes"' --cfg 'feature="encryption"' --cfg 'feature="hmac"' --cfg 'feature="pbkdf2"' -C metadata=fa46717aec82b599 --out-dir /root/concordium-node/concordium-node/target/release/deps -L dependency=/root/concordium-node/concordium-node/target/release/deps --extern aes=/root/concordium-node/concordium-node/target/release/deps/libaes-1a646745fca8ed32.rlib --extern anyhow=/root/concordium-node/concordium-node/target/release/deps/libanyhow-9c9a509ace21c38a.rlib --extern base64=/root/concordium-node/concordium-node/target/release/deps/libbase64-e92b9a9480609a1d.rlib --extern block_modes=/root/concordium-node/concordium-node/target/release/deps/libblock_modes-be668f5d3ed62133.rlib --extern byteorder=/root/concordium-node/concordium-node/target/release/deps/libbyteorder-14cd325921765a89.rlib --extern crypto_common_derive=/root/concordium-node/concordium-node/target/release/deps/libcrypto_common_derive-93a9dc4a865d1f62.so --extern derive_more=/root/concordium-node/concordium-node/target/release/deps/libderive_more-944afc1eaac58b45.so --extern ed25519_dalek=/root/concordium-node/concordium-node/target/release/deps/libed25519_dalek-f29a77bc213db115.rlib --extern either=/root/concordium-node/concordium-node/target/release/deps/libeither-1576d3cccb0d8424.rlib --extern ff=/root/concordium-node/concordium-node/target/release/deps/libff-321e3123c5c66334.rlib --extern group=/root/concordium-node/concordium-node/target/release/deps/libgroup-b62513f7a850f2dc.rlib --extern hex=/root/concordium-node/concordium-node/target/release/deps/libhex-790d00e9b7901dcf.rlib --extern hmac=/root/concordium-node/concordium-node/target/release/deps/libhmac-79386eca82deeb55.rlib --extern libc=/root/concordium-node/concordium-node/target/release/deps/liblibc-0e549d8ddaa62468.rlib --extern pairing=/root/concordium-node/concordium-node/target/release/deps/libpairing-1feb7c78bce4d979.rlib --extern pbkdf2=/root/concordium-node/concordium-node/target/release/deps/libpbkdf2-c318041411d03240.rlib --extern rand=/root/concordium-node/concordium-node/target/release/deps/librand-1467d045d1d02566.rlib --extern serde=/root/concordium-node/concordium-node/target/release/deps/libserde-3791a365163d2e8f.rlib --extern sha2=/root/concordium-node/concordium-node/target/release/deps/libsha2-ef2a5f5428936e8d.rlib --extern thiserror=/root/concordium-node/concordium-node/target/release/deps/libthiserror-f9d8a049b5c74b7b.rlib`
error: failed to run custom build command for `concordium_node v3.0.0 (/root/concordium-node/concordium-node)`

Caused by:
  process didn't exit successfully: `/root/concordium-node/concordium-node/target/release/build/concordium_node-c2e9678b2c9719f8/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-changed=/root/concordium-node/concordium-node/src/network/serialization/schema.fbs
  cargo:rerun-if-changed=/root/concordium-node/concordium-node/../concordium-grpc-api/concordium_p2p_rpc.proto

  --- stderr
  thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', build.rs:12:34
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: build failed
root@baker1:~/concordium-node/concordium-node# 
abizjak commented 2 years ago

There are some recursive submodules, so you need to

git submodule update --init --recursive

Note that you first have to build the haskell libraries (running stack build inside concordium-consensus. Otherwise you will get linking failures.

roma4u commented 2 years ago

With --recursive it went further but not much:

   Compiling hyper v0.14.10
   Compiling tonic v0.4.3
   Compiling crypto_common v0.1.0 (/root/concordium-node/concordium-base/rust-src/crypto_common)
error[E0425]: cannot find function `size_prefixed_root_as_network_message` in module `network`
    --> src/network/serialization/fbs.rs:87:25
     |
87   |     let root = network::size_prefixed_root_as_network_message(buffer)?;
     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: a function with a similar name exists: `get_size_prefixed_root_as_network_message`
     |
    ::: src/../target/schema_generated.rs:1894:1
     |
1894 | pub fn get_size_prefixed_root_as_network_message<'a>(buf: &'a [u8]) -> NetworkMessage<'a> {
     | ----------------------------------------------------------------------------------------- similarly named function `get_size_prefixed_root_as_network_message` defined here

error[E0423]: expected function, found module `flatbuffers::get_root`
    --> src/../target/schema_generated.rs:1890:3
     |
1890 |   flatbuffers::get_root::<NetworkMessage<'a>>(buf)
     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a function

error[E0425]: cannot find function `get_size_prefixed_root` in crate `flatbuffers`
    --> src/../target/schema_generated.rs:1895:16
     |
1895 |     flatbuffers::get_size_prefixed_root::<NetworkMessage<'a>>(buf)
     |                  ^^^^^^^^^^^^^^^^^^^^^^ help: a function with a similar name exists: `size_prefixed_root`
     |
    ::: /root/.cargo/registry/src/github.com-1ecc6299db9ec823/flatbuffers-2.0.0/src/get_root.rs:56:1
     |
56   | / pub fn size_prefixed_root<'buf, T>(data: &'buf [u8]) -> Result<T::Inner, InvalidFlatbuffer>
57   | | where
58   | |     T: 'buf + Follow<'buf> + Verifiable,
     | |________________________________________- similarly named function `size_prefixed_root` defined here

error[E0603]: module `get_root` is private
    --> src/../target/schema_generated.rs:1890:16
     |
1890 |   flatbuffers::get_root::<NetworkMessage<'a>>(buf)
     |                ^^^^^^^^ private module
     |
note: the module `get_root` is defined here
    --> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/flatbuffers-2.0.0/src/lib.rs:35:1
     |
35   | mod get_root;
     | ^^^^^^^^^^^^^

Some errors have detailed explanations: E0423, E0425, E0603.
For more information about an error, try `rustc --explain E0423`.
error: could not compile `concordium_node` due to 4 previous errors
roma4u commented 2 years ago

Also get error when running stack build inside concordium-consensus

2022-02-15 15:36:30.885424: [debug] (SQL) DELETE FROM "config_cache_no_dir_option" WHERE ("config_cache_id"=?) AND (1=2); [PersistInt64 38]
2022-02-15 15:36:30.885507: [debug] (SQL) INSERT INTO "config_cache_no_dir_option"("config_cache_id","index","option") VALUES (?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?); [PersistInt64 38,PersistInt64 0,PersistText "--dependency=base=base-4.14.1.0",PersistInt64 38,PersistInt64 1,PersistText "--dependency=basement=basement-0.0.11-CejmV4k3OtGGKPkDYOlSof",PersistInt64 38,PersistInt64 2,PersistText "--dependency=bytestring=bytestring-0.10.12.0",PersistInt64 38,PersistInt64 3,PersistText "--dependency=deepseq=deepseq-1.4.4.0",PersistInt64 38,PersistInt64 4,PersistText "--dependency=ghc-prim=ghc-prim-0.6.1",PersistInt64 38,PersistInt64 5,PersistText "-fsupport_basement",PersistInt64 38,PersistInt64 6,PersistText "-fsupport_bytestring",PersistInt64 38,PersistInt64 7,PersistText "-fsupport_deepseq",PersistInt64 38,PersistInt64 8,PersistText "-fsupport_foundation",PersistInt64 38,PersistInt64 9,PersistText "--extra-lib-dirs=/root/concordium-node/concordium-consensus/../concordium-base/lib",PersistInt64 38,PersistInt64 10,PersistText "--extra-lib-dirs=/root/concordium-node/concordium-consensus/./smart-contracts/lib",PersistInt64 38,PersistInt64 11,PersistText "--exact-configuration",PersistInt64 38,PersistInt64 12,PersistText "--ghc-option=-fhide-source-paths"]
2022-02-15 15:36:30.885810: [debug] (SQL) DELETE FROM "config_cache_dep" WHERE ("config_cache_id"=?) AND (1=2); [PersistInt64 38]
2022-02-15 15:36:30.885898: [debug] (SQL) INSERT INTO "config_cache_dep"("config_cache_id","ghc_pkg_id") VALUES (?,?),(?,?),(?,?),(?,?),(?,?); [PersistInt64 38,PersistText "base-4.14.1.0",PersistInt64 38,PersistText "basement-0.0.11-CejmV4k3OtGGKPkDYOlSof",PersistInt64 38,PersistText "bytestring-0.10.12.0",PersistInt64 38,PersistText "deepseq-1.4.4.0",PersistInt64 38,PersistText "ghc-prim-0.6.1"]
Progress 4/94        
2022-02-15 15:36:30.892303: [error] 
--  While building package lmdb-0.2.5 (scroll up to its section to see the error) using:
      /root/.stack/setup-exe-cache/x86_64-linux-tinfo6/Cabal-simple_mPHDZzAJ_3.2.1.0_ghc-8.10.4 --builddir=.stack-work/dist/x86_64-linux-tinfo6/Cabal-3.2.1.0 configure --user --package-db=clear --package-db=global --package-db=/root/.stack/snapshots/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/pkgdb --package-db=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/pkgdb --libdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/lib --bindir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/bin --datadir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/share --libexecdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/libexec --sysconfdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/etc --docdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/doc/lmdb-0.2.5 --htmldir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/doc/lmdb-0.2.5 --haddockdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/doc/lmdb-0.2.5 --dependency=array=array-0.5.4.0 --dependency=base=base-4.14.1.0 --extra-lib-dirs=/root/concordium-node/concordium-consensus/../concordium-base/lib --extra-lib-dirs=/root/concordium-node/concordium-consensus/./smart-contracts/lib --exact-configuration --ghc-option=-fhide-source-paths
    Process exited with code: ExitFailure 1
MilkywayPirate commented 2 years ago

Which version of flatbuffers are you using? We support v2.0.0

Can you please verify that you have the supported dependencies? https://github.com/Concordium/concordium-node/tree/main/concordium-node#dependencies-to-build-the-project

See e.g. https://github.com/Concordium/concordium-node/blob/main/scripts/static-binaries/build-on-ubuntu.sh

roma4u commented 2 years ago
#flatc --version 
flatc version 1.11.0

Starting flatc update

abizjak commented 2 years ago

Also get error when running stack build inside concordium-consensus

2022-02-15 15:36:30.885424: [debug] (SQL) DELETE FROM "config_cache_no_dir_option" WHERE ("config_cache_id"=?) AND (1=2); [PersistInt64 38]
2022-02-15 15:36:30.885507: [debug] (SQL) INSERT INTO "config_cache_no_dir_option"("config_cache_id","index","option") VALUES (?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?),(?,?,?); [PersistInt64 38,PersistInt64 0,PersistText "--dependency=base=base-4.14.1.0",PersistInt64 38,PersistInt64 1,PersistText "--dependency=basement=basement-0.0.11-CejmV4k3OtGGKPkDYOlSof",PersistInt64 38,PersistInt64 2,PersistText "--dependency=bytestring=bytestring-0.10.12.0",PersistInt64 38,PersistInt64 3,PersistText "--dependency=deepseq=deepseq-1.4.4.0",PersistInt64 38,PersistInt64 4,PersistText "--dependency=ghc-prim=ghc-prim-0.6.1",PersistInt64 38,PersistInt64 5,PersistText "-fsupport_basement",PersistInt64 38,PersistInt64 6,PersistText "-fsupport_bytestring",PersistInt64 38,PersistInt64 7,PersistText "-fsupport_deepseq",PersistInt64 38,PersistInt64 8,PersistText "-fsupport_foundation",PersistInt64 38,PersistInt64 9,PersistText "--extra-lib-dirs=/root/concordium-node/concordium-consensus/../concordium-base/lib",PersistInt64 38,PersistInt64 10,PersistText "--extra-lib-dirs=/root/concordium-node/concordium-consensus/./smart-contracts/lib",PersistInt64 38,PersistInt64 11,PersistText "--exact-configuration",PersistInt64 38,PersistInt64 12,PersistText "--ghc-option=-fhide-source-paths"]
2022-02-15 15:36:30.885810: [debug] (SQL) DELETE FROM "config_cache_dep" WHERE ("config_cache_id"=?) AND (1=2); [PersistInt64 38]
2022-02-15 15:36:30.885898: [debug] (SQL) INSERT INTO "config_cache_dep"("config_cache_id","ghc_pkg_id") VALUES (?,?),(?,?),(?,?),(?,?),(?,?); [PersistInt64 38,PersistText "base-4.14.1.0",PersistInt64 38,PersistText "basement-0.0.11-CejmV4k3OtGGKPkDYOlSof",PersistInt64 38,PersistText "bytestring-0.10.12.0",PersistInt64 38,PersistText "deepseq-1.4.4.0",PersistInt64 38,PersistText "ghc-prim-0.6.1"]
Progress 4/94        
2022-02-15 15:36:30.892303: [error] 
--  While building package lmdb-0.2.5 (scroll up to its section to see the error) using:
      /root/.stack/setup-exe-cache/x86_64-linux-tinfo6/Cabal-simple_mPHDZzAJ_3.2.1.0_ghc-8.10.4 --builddir=.stack-work/dist/x86_64-linux-tinfo6/Cabal-3.2.1.0 configure --user --package-db=clear --package-db=global --package-db=/root/.stack/snapshots/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/pkgdb --package-db=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/pkgdb --libdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/lib --bindir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/bin --datadir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/share --libexecdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/libexec --sysconfdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/etc --docdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/doc/lmdb-0.2.5 --htmldir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/doc/lmdb-0.2.5 --haddockdir=/root/concordium-node/concordium-consensus/.stack-work/install/x86_64-linux-tinfo6/324a805deba2cc18afcd50012975616ea9948195aa56a94999cfface3a7de845/8.10.4/doc/lmdb-0.2.5 --dependency=array=array-0.5.4.0 --dependency=base=base-4.14.1.0 --extra-lib-dirs=/root/concordium-node/concordium-consensus/../concordium-base/lib --extra-lib-dirs=/root/concordium-node/concordium-consensus/./smart-contracts/lib --exact-configuration --ghc-option=-fhide-source-paths
    Process exited with code: ExitFailure 1

Did you install the necessary dependencies as they are listed here? https://github.com/Concordium/concordium-node/tree/main/concordium-consensus#haskell-stack-and-rust

roma4u commented 2 years ago

concordium-node/concordium-consensus/ - done build-static-binaries.sh - done build-static-libraries.sh - done

But I get an error at almost the last step:

https://pastebin.com/iB8eH1i8

abizjak commented 2 years ago

So I am not sure why you are building the node again?

build-static-binaries.sh at the end of execution printed something like

The binaries are ready inside the 'static-node-binaries' image in the '/build/bin/' directory.
They can be obtained by mounting the directory using 'docker run -v \$OUT_DIR:/out/ static-node-binaries' cp ...
and copying the files.

So you can copy them out by doing something like

docker run -v $OUT_DIR:/out static-node-binaries cp /build/bin/concordium-node /out/

where $OUT_DIR is some directory on your host (e.g., $OUT_DIR=$(pwd)/out)

roma4u commented 2 years ago

I think the issue can be closed. In Ubuntu, I was unable to build normally, I think the problem is in the paths. I don't have much time. But through "build-static-binaries.sh" I got fresh binaries. Thank you for your help and your time!

roma4u commented 2 years ago
git clone https://github.com/Concordium/concordium-node.git
cd concordium-node && git submodule update --init --recursive
apt install -y docker.io docker-compose
UBUNTU_VERSION=20.04 STATIC_LIBRARIES_IMAGE_TAG=latest GHC_VERSION=8.10.4 ./scripts/static-binaries/build-static-binaries.sh
docker run -v $(pwd)/out:/out static-node-binaries cp /build/bin/concordium-node /out