Libsodium path missing from environment variables of cnode.service #933

Thanks to Mik1893
https://github.com/cardano-community/guild-operators/issues/933

Describe the bug
After a fresh install of cntools and deploy of system services, cardano-node is not synchronizing the db, throwing the following error:
undefined symbol: crypto_vrf_publickeybytes
See fix at the end of report

To Reproduce
Steps to reproduce the behavior:

  1. Fresh install of cntools, compile cardano-node
  2. start cnode
  3. status will stop at opening connection with other nodes. after a few minutes, it will crash with the error undefined symbol: crypto_vrf_publickeybytes
  4. cnode will autorestart (so not easy to spot the error) and go in a loop
  5. adding libsodium libs in the service environment variables will fix the issue (see below how to do that if you have the same problem)

Expected behavior
cnode service working and cardano-node sync with blockchain

Version:

  • OS: Ubuntu 20.04
  • Product version: CNTools v8.4.4
  • Cardano Node version: cardano-node 1.27.0 - linux-x86_64 - ghc-8.10

Additional context
You can fix the problem by doing:
sudo systemctl edit cnode.service
In the text editor instance that opens up just add the following and save:

[Service]
Environment=“LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH”
Environment=“PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH”

Related Screenshots
image

1 Like