Post
Topic
Board Announcements (Altcoins)
Re: [CARBON][SM] Carboncoin | For a Greener Future - Efficient+Secure+Sustainable
by
fairglu
on 05/11/2016, 00:38:40 UTC
I am trying to recompile the explorer's wallet with the latest github code, but under Ubuntu 14 LTS this fails with the following errors


 CXXLD    carboncoind
libcarboncoin_common.a(libcarboncoin_common_a-key.o): In function `CKey::SignCompact(uint256 const&, std::vector >&) const':
/wallets/CarboncoinCore/src/key.cpp:204: undefined reference to `secp256k1_ecdsa_sign_recoverable'
/wallets/CarboncoinCore/src/key.cpp:206: undefined reference to `secp256k1_ecdsa_recoverable_signature_serialize_compact'
libcarboncoin_common.a(libcarboncoin_common_a-pubkey.o): In function `CPubKey::RecoverCompact(uint256 const&, std::vector > const&)':
/wallets/CarboncoinCore/src/pubkey.cpp:194: undefined reference to `secp256k1_ecdsa_recoverable_signature_parse_compact'
/wallets/CarboncoinCore/src/pubkey.cpp:197: undefined reference to `secp256k1_ecdsa_recover'
collect2: error: ld returned 1 exit status
make[2]: *** [carboncoind] Error 1

Hi there

you need to make sure the correct dependencies are installed first, especially db4.8

manual:
https://github.com/carboncointrust/CarboncoinCore/blob/master/doc/build-unix.md

to get the db4.8 from the repository use
sudo add-apt-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install libdb4.8-dev libdb4.8++-dev

Best

AM


The problem is from libsec256k1, not db48.
The general makefile is incomplete BTW, and I had to go into the secp256k1 and build it separately,  however as the error seems to indicates, the version in the repository may not be the one used by the wallet (or it needs specific build options ?)

secp256k1 libs are a big mess with multiple incompatible versions, so there is a version of Linux dll hell when makefiles are not explicitly using static versions... could be what is happening here if the wallet is developed on a machine where another version of libsec256k1 was "installed".