Skip to content

[BUG] - Can't build cardano-node on Fedora - conflict: pkg-config package libsodium-any, not found in the pkg-config database #5561

@ArturWieczorek

Description

@ArturWieczorek

Internal

Area

Installation instruction:
Installing the node from source
https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/getting-started/install.md

Summary

Can't build cardano-node on Fedora.

We have tests https://github.com/input-output-hk/cardano-node-tests/tree/master/cabal_build_tests that check "Installing the node from source" instruction in dockerized environments on Ubuntu and Fedora.

After updating tests - they are on a branch artur/update-cabal-tests - an attempt to run 8.7.0-pre on Ubuntu worked fine while the same test installation on Fedora failed with:

Downloading the latest package lists from:
- hackage.haskell.org
- cardano-haskell-packages
Package list of cardano-haskell-packages has been updated.
The index-state is set to 2023-11-30T14:34:52Z.
Package list of hackage.haskell.org has been updated.
The index-state is set to 2023-11-30T21:40:36Z.
To revert to previous state run:
    cabal v2-update 'hackage.haskell.org,2023-11-30T20:29:10Z'
Resolving dependencies...
Error: cabal: Could not resolve dependencies:
[__0] trying: cardano-git-rev-0.1.3.0 (user goal)
[__1] trying: base-4.18.1.0/installed-4.18.1.0 (dependency of cardano-git-rev)
[__2] trying: cardano-node-8.7.0 (user goal)
[__3] trying: ouroboros-consensus-protocol-0.6.0.0 (dependency of
cardano-node)
[__4] trying: cardano-crypto-tests-2.1.2.0 (dependency of
ouroboros-consensus-protocol)
[__5] next goal: cardano-crypto-praos (dependency of cardano-crypto-tests)
[__5] rejecting: cardano-crypto-praos-2.1.2.0, cardano-crypto-praos-2.1.1.2
(conflict: pkg-config package libsodium-any, not found in the pkg-config
database)
[__5] rejecting: cardano-crypto-praos-2.1.1.1 (conflict:
base==4.18.1.0/installed-4.18.1.0, cardano-crypto-praos => base>=4.14 &&
<4.17)
[__5] skipping: cardano-crypto-praos-2.1.1.0, cardano-crypto-praos-2.1.0.0,
cardano-crypto-praos-2.0.0.1, cardano-crypto-praos-2.0.0.0.1,
cardano-crypto-praos-2.0.0 (has the same characteristics that caused the
previous version to fail: excludes 'base' version 4.18.1.0)
[__5] fail (backjumping, conflict set: base, cardano-crypto-praos,
cardano-crypto-tests)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: base, cardano-crypto-praos,
cardano-crypto-tests, ouroboros-consensus-protocol, cardano-node,
cardano-git-rev
Try running with --minimize-conflict-set to improve the error message.

Full logs are attached below.

Steps to reproduce
Steps to reproduce the behavior:

  1. Clone cardano-node-tests
    git clone git@github.com:input-output-hk/cardano-node-tests.git

  2. Navigate to cabal_build_tests - there is a README there too:
    cd cardano-node-tests/cabal_build_tests

  3. Checkout branch artur/update-cabal-tests
    git checkout artur/update-cabal-tests

  4. Run tests:
    ./run-fedora.sh -t tag -o "8.7.0-pre" --> Fails
    ./run-ubuntu.sh -t tag -o "8.7.0-pre" --> Passes

Expected behavior
Build is successful.

System info (please complete the following information):
Our Dockerfile uses fedora:latest
Node and CLI version: We are trying to build 8.7.0-pre.

Screenshots and attachments
Fedora (Failing) full logs:
fedora.txt

Ubuntu (Successful) full logs:
ubuntu.txt

I found this posts that suggests that this issue is also present on Arch Linux:
https://forum.cardano.org/t/cardano-crypto-class-2-0-0-conflict-pkg-config-package-libsodium-any-not-found-in-the-pkg-config-database/56203/5

Additional context
N/A

Metadata

Metadata

Assignees

Labels

type: bugSomething is not workingtype: documentationImprovements or additions to documentation

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions