Author

Topic: How to install bitcoin 0.10 wallet on gentoo linux? [SOLVED] (Read 2450 times)

member
Activity: 136
Merit: 13
Now that I'm more awake, I notice the init script is being used here.
Check BITCOIND_OPTS in /etc/conf.d/bitcoind - it defaults to:
Code:
BITCOIND_OPTS="-disablewallet"
Well, that would be it. It was indeed set to -disablewallet. When I leave it empty, it generates the wallet and works as expected. Thank you Luke-Jr.

Perhaps a "eselect news" message can be added to indicate the change of default behavior between 0.9 and 0.10 bitcoind package?
legendary
Activity: 2576
Merit: 1186
Can you post the build.log somewhere? Maybe open a bug on Gentoo's bugzilla if you need somewhere to upload the file.

Now I'm confused even further. Here is the build.log on pastebin - the wallet seems to be enabled, and even compiled. It just doesn't start when I start bitcoind.

It seems it was being compiled with --disable-util-cli : I wonder if this is disabling bitcoin-cli ?
That's expected. bitcoin-cli is a separate package.

Now that I'm more awake, I notice the init script is being used here.
Check BITCOIND_OPTS in /etc/conf.d/bitcoind - it defaults to:
Code:
BITCOIND_OPTS="-disablewallet"
sr. member
Activity: 293
Merit: 251
Director - www.cubeform.io
Can you post the build.log somewhere? Maybe open a bug on Gentoo's bugzilla if you need somewhere to upload the file.

Now I'm confused even further. Here is the build.log on pastebin - the wallet seems to be enabled, and even compiled. It just doesn't start when I start bitcoind.

It seems it was being compiled with --disable-util-cli : I wonder if this is disabling bitcoin-cli ?
sr. member
Activity: 293
Merit: 251
Director - www.cubeform.io
Could it be that it is somehow being run with -disablewallet   or disablewallet=1 is in the conf file?
member
Activity: 136
Merit: 13
Can you post the build.log somewhere? Maybe open a bug on Gentoo's bugzilla if you need somewhere to upload the file.

Now I'm confused even further. Here is the build.log on pastebin - the wallet seems to be enabled, and even compiled. It just doesn't start when I start bitcoind.
legendary
Activity: 2576
Merit: 1186
Can you post the build.log somewhere? Maybe open a bug on Gentoo's bugzilla if you need somewhere to upload the file.
sr. member
Activity: 293
Merit: 251
Director - www.cubeform.io
It is not that the file is missing. Nor do you have to create it -- it should be created by the wallet. It seems like ENABLE_WALLET Is not set. Perhaps compile yourself rather than using emerge? Or can get emerge to allow you to edit the configuration file to be sure it is setting it?
I can confirm that the wallet.dat file is not the issue. I believe that configuring and compiling the sources by hand would solve the issue, but we have an explicit policy to use emerge whenever possible. The configuration that emerge produces is controlled by the USE flags, which I did set. Somewhere inside the ebuild package, the USE flag "wallet" must have been translated incorrectly or not at all.

I think this is the case. It very much sounds like the wallet flag was not being set by the description.
member
Activity: 136
Merit: 13
Thank you all for your effort. I downgraded to 0.9.4 and everything is fine now. I believe the package for 0.10 is just broken.
member
Activity: 136
Merit: 13
It is not that the file is missing. Nor do you have to create it -- it should be created by the wallet. It seems like ENABLE_WALLET Is not set. Perhaps compile yourself rather than using emerge? Or can get emerge to allow you to edit the configuration file to be sure it is setting it?
I can confirm that the wallet.dat file is not the issue. I believe that configuring and compiling the sources by hand would solve the issue, but we have an explicit policy to use emerge whenever possible. The configuration that emerge produces is controlled by the USE flags, which I did set. Somewhere inside the ebuild package, the USE flag "wallet" must have been translated incorrectly or not at all.
member
Activity: 136
Merit: 13
Ok, I definitely did not identify your problem correctly. You need leveldb for sure (DB lib for the blockchain), and I'm surprised to hear you didn't need that for 0.9.4. BerkeleyDB 4.8 is what you need for the wallet. I think Gentoo users are few on the forum, but one of the core devs uses it (lukejr). Worst case scenario, you may be able to solicit lukejr for advice about this.
I just checked my personal server (0.9.4) and it indeed has leveldb. I'm not sure how I missed this.

If I install bitcoin-qt, would I be able to create wallet.dat in GUI and move the file in the bitcoind directory on the server?

I would try this. I cannot promise it will work, but it could help pin your problem down a little more. Also, expect to get this moved, as it should probably be in Technical Support
I did try it on the company server and it did not help. I ran bitcoin-qt 0.10 as user "bitcoin" and it generated the file correctly in /var/lib/bitcoin/.bitcoin/wallet.dat. Then I stopped bitcoin-qt and started up bitcoind 0.10 and it completely ignored the file.

Thank you for your time. I'm currently emerging 0.9.4 on the company server and I believe it should fix my issues.
sr. member
Activity: 293
Merit: 251
Director - www.cubeform.io
Ok, I definitely did not identify your problem correctly. You need leveldb for sure (DB lib for the blockchain), and I'm surprised to hear you didn't need that for 0.9.4. BerkeleyDB 4.8 is what you need for the wallet. I think Gentoo users are few on the forum, but one of the core devs uses it (lukejr). Worst case scenario, you may be able to solicit lukejr for advice about this.

Edit:
If I install bitcoin-qt, would I be able to create wallet.dat in GUI and move the file in the bitcoind directory on the server?

I would try this. I cannot promise it will work, but it could help pin your problem down a little more. Also, expect to get this moved, as it should probably be in Technical Support


It is not that the file is missing. Nor do you have to create it -- it should be created by the wallet. It seems like ENABLE_WALLET Is not set. Perhaps compile yourself rather than using emerge? Or can get emerge to allow you to edit the configuration file to be sure it is setting it?
legendary
Activity: 3430
Merit: 3080
Ok, I definitely did not identify your problem correctly. You need leveldb for sure (DB lib for the blockchain), and I'm surprised to hear you didn't need that for 0.9.4. BerkeleyDB 4.8 is what you need for the wallet. I think Gentoo users are few on the forum, but one of the core devs uses it (lukejr). Worst case scenario, you may be able to solicit lukejr for advice about this.

Edit:
If I install bitcoin-qt, would I be able to create wallet.dat in GUI and move the file in the bitcoind directory on the server?

I would try this. I cannot promise it will work, but it could help pin your problem down a little more. Also, expect to get this moved, as it should probably be in Technical Support
member
Activity: 136
Merit: 13
According to the log, the BerkeleyDB is enabled:

2015-05-11 10:55:16 Bitcoin version v0.10.0.0-g047a898 (Fri, 13 Feb 2015 09:55:11 +0100)
2015-05-11 10:55:16 Using OpenSSL version OpenSSL 1.0.1l 15 Jan 2015
2015-05-11 10:55:16 Using BerkeleyDB version Berkeley DB 4.8.30: (2014-12-18)
2015-05-11 10:55:16 Default data directory /var/lib/bitcoin/.bitcoin
2015-05-11 10:55:16 Using data directory /var/lib/bitcoin/.bitcoin
2015-05-11 10:55:16 Using config file /etc/bitcoin/bitcoin.conf
2015-05-11 10:55:16 Using at most 125 connections (1024 file descriptors available)
2015-05-11 10:55:16 Using 2 threads for script verification
2015-05-11 10:55:16 Binding RPC on address ::1 port 8332 (IPv4+IPv6 bind any: 0)
2015-05-11 10:55:16 Binding RPC on address 127.0.0.1 port 8332 (IPv4+IPv6 bind any: 0)
2015-05-11 10:55:16 Bound to [::]:8333
2015-05-11 10:55:16 Bound to 0.0.0.0:8333
2015-05-11 10:55:16 init message: Loading block index...
2015-05-11 10:55:16 Opening LevelDB in /var/lib/bitcoin/.bitcoin/blocks/index
2015-05-11 10:55:16 Opened LevelDB successfully
2015-05-11 10:55:16 Opening LevelDB in /var/lib/bitcoin/.bitcoin/chainstate
2015-05-11 10:55:23 Opened LevelDB successfully
2015-05-11 10:55:29 LoadBlockIndexDB: last block file = 130
2015-05-11 10:55:29 LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=425, size=108347556, heights=294329...295134, time=2014-04-05...2014-04-10)
2015-05-11 10:55:29 Checking all blk files are present...
2015-05-11 10:55:29 LoadBlockIndexDB(): transaction index disabled
2015-05-11 10:55:29 LoadBlockIndexDB(): hashBestChain=0000000000000000325765440344c512be36fe3ee4e7f711df5072a89850de01 height=295014 date=2014-04-09 23:46:27 progress=0.235179
2015-05-11 10:55:29 init message: Verifying blocks...
2015-05-11 10:55:29 Verifying last 288 blocks at level 3
member
Activity: 136
Merit: 13
As it is a new install, I decided to go with version 0.10. I emerged bitcoind and bitcoin-cli.

What do you mean by "emerged"?

My initial guess is that you, or whoever built the 0.10 binary you installed, ran that build without Berkeley DB 4.8 as a static link. The current wallet in Bitcoin Core depends on Berkeley DB 4.8, but the code will build ok without it, and the software also runs fine without the wallet component compiled.
Thank you for your answer. I'm not using binaries - gentoo linux is source-based distribution and "emerge" is the package manager. The build process is controlled with so-called "USE flags". The appropriate USE flag in this case is "wallet", which I have selected.

I'm not sure about the BerkeleyDB situation, but there was new package required, called "dev-libs/leveldb" which was emerged as well. There are no USE flags for BerkeleyDB in the package, I'm afraid.

If I install bitcoin-qt, would I be able to create wallet.dat in GUI and move the file in the bitcoind directory on the server?
legendary
Activity: 3430
Merit: 3080
As it is a new install, I decided to go with version 0.10. I emerged bitcoind and bitcoin-cli.

What do you mean by "emerged"?

My initial guess is that you, or whoever built the 0.10 binary you installed, ran that build without Berkeley DB 4.8 as a static link. The current wallet in Bitcoin Core depends on Berkeley DB 4.8, but the code will build ok without it, and the software also runs fine without the wallet component compiled.
member
Activity: 136
Merit: 13
I'm confused. I have been using bitcoind-0.9.4 from command line on my headless home server (gentoo linux), using wallet.dat generated back in 2011 when I first got into bitcoin.

Now I have been tasked to install bitcoind on another gentoo server, for my employer. As it is a new install, I decided to go with version 0.10. I emerged bitcoind and bitcoin-cli. The bitcoind is running and rpc passwords are all set up. But when I try to get new address, I get this error:

Code:
sphinx ~ # bitcoin-cli getnewaddress
error: {"code":-32601,"message":"Method not found (disabled)"}

Then I noticed that there is no wallet.dat file either in bitcoind directory (/var/lib/bitcoin/.bitcoin) nor in my home (/root/.bitcoin). I tried to google on how to create wallet.dat in 0.10, but none of the results were of any help. I read the bitcoin 0.10 changelog, but none of the changes suggest that the wallet support is removed.

The wallet support is enabled where it should be:

Code:
sphinx ~ # equery uses bitcoind
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for net-p2p/bitcoind-0.10.0-r1:
 U I
 - - bitcoin_policy_cpfp       : Child-Pays-For-Parent policy: If you mine, you will give consideration to child transaction fees to pay for their parents
 - - bitcoin_policy_dcmp       : Data Carrier Multi-Push policy: Your node will assist transactions with multiple pushes in their data carrier (if any)
 - - bitcoin_policy_rbf        : Replace By Fee policy: Your node will preferentially mine and relay transactions paying the highest fee, regardless of
                                 receive order
 - - bitcoin_policy_spamfilter : Enhanced spam filter policy: Notorious spammers will not be assisted by your node
 - - examples                  : Install examples, usually source code
 - - ljr                       : Enable Luke Dashjr's patches
 - - logrotate                 : Use app-admin/logrotate for rotating logs
 - - test                      : Workaround to pull in packages needed to run with FEATURES=test. Portage-2.1.2 handles this internally, so don't set it in
                                 make.conf/package.use anymore
 - - upnp                      : Enable Universal Plug and Play
 + + wallet                    : Enable wallet support
 - - xt                        : Enable Mike Hearn's Bitcoin XT patches
 - - zeromq                    : Report blocks and transactions via zeromq

Code:
sphinx ~ # equery uses bitcoin-cli
!!! No USE flags found for net-p2p/bitcoin-cli-0.10.0-r1

What am I missing here?
Jump to: