Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: rupy on January 03, 2013, 08:53:32 PM



Title: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on January 03, 2013, 08:53:32 PM
So what do I have to delete in .bitcoin to get the latest release to work?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: jgarzik on January 03, 2013, 09:21:25 PM
So what do I have to delete in .bitcoin to get the latest release to work?

Technically you can delete everything except wallet.dat and bitcoin.conf.



Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on January 07, 2013, 11:38:48 AM
Ok, i renamed the .bitcoin folder and still Segmentation fault... and the folder is empty, no logs, no nothing! I run suse 11.3...


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: jgarzik on January 07, 2013, 04:28:38 PM
Ok, i renamed the .bitcoin folder and still Segmentation fault... and the folder is empty, no logs, no nothing! I run suse 11.3...

Can you post the exact errors you get?  No debug.log appears at all?



Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: notme on January 08, 2013, 01:36:49 AM
Version 3.2 of what?

The latest version  of the official client is 0.7.2.


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on January 08, 2013, 05:44:29 PM
No debug at all.

I was using bitcoin 3.2 which worked fine but lately it spins out of control and wears my SSD...


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: Pieter Wuille on January 08, 2013, 08:24:40 PM
Do you mean 0.3.20?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on January 09, 2013, 09:05:28 AM
Ah, yes. But thats not the issue the issue is that since 0.6.xxxx > the client segmentation faults on suse 11.3, works fine on my suse 12...


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: notme on January 09, 2013, 09:07:20 AM
Ah, yes. But thats not the issue the issue is that since 0.6.xxxx > the client segmentation faults on suse 11.3, works fine on my suse 12...

likely a library version issue... just compile from git


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on January 29, 2013, 09:47:03 PM
Ok, compilation fails: http://pastebin.com/iVpPwnzQ (http://pastebin.com/iVpPwnzQ)


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: notme on January 30, 2013, 12:51:42 PM
Ok, compilation fails: http://pastebin.com/iVpPwnzQ (http://pastebin.com/iVpPwnzQ)

Looks like you are missing the libboost development package.  Make sure configure is happy before you try to run make.


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on January 30, 2013, 05:09:33 PM
There is no configure file!

But ok, I resolved the boost dependency... but now it can't compile the db because suse 11.3 has berkeley 4.5 and bitcoin requires 4.8, so thats the segmentation fault right there I guess?

So is it possible to fix this?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: notme on January 30, 2013, 06:57:08 PM
There is no configure file!

But ok, I resolved the boost dependency... but now it can't compile the db because suse 11.3 has berkeley 4.5 and bitcoin requires 4.8, so thats the segmentation fault right there I guess?

So is it possible to fix this?

If you're using a direct git clone rather than a release tarball, you need to run ./autogen.sh first to generate ./configure, same as nearly every other autotools setup in existence.

Yes, you can compile and install berkeley 4.8 yourself if your distro doesn't provide a package.

If you run bitcoin in a gdb session you should be able to get a backtrace that tells you where the segfault is occurring.  I believe the binaries from bitcoin.org have all the dependencies compiled in, so I don't think the berkeley db version is your issue.


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on January 30, 2013, 09:53:40 PM
gdb gives:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff6d476b2 in QMetaObject::cast(QObject*) const ()
   from /usr/lib64/libQtCore.so.4

will try berkeley 4.8


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on February 02, 2013, 01:11:38 PM
Hm, can someone help me get the build up?

Which file do I have to download in order to get berkeley files to be reachable for the bitcoin build?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: deepceleron on February 02, 2013, 01:45:14 PM
Would it help to upgrade to a distro only two years old?
http://www.howtoforge.com/how-to-upgrade-opensuse-11.3-to-11.4-desktop-and-server


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on February 02, 2013, 02:09:12 PM
Well, the machine I use is a 24/7 server and my main work development machine so I can't risk anything going haywire... I know that updating versions like that always breaks important things...


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: deepceleron on February 02, 2013, 03:29:47 PM
gdb gives:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff6d476b2 in QMetaObject::cast(QObject*) const ()
   from /usr/lib64/libQtCore.so.4

will try berkeley 4.8

Bitcoin 0.3.xx does not use the Qt library, it uses wxwidgets.

Bitcoin targets QT version 4.8.2 (https://github.com/bitcoin/bitcoin/commit/a5ba586669b6a8f35b9c420839e679d19c10fc36) with compatibility for V5. It looks like OpenSUSE 11.3 shipped with QT v4.6.0 (http://news.opensuse.org/2010/02/01/download-nowits-here-opensuse-11-3-milestone-1/) If you have a Gnome desktop, Qt may not even be installed.

Install/Updates for Qt - no listing for 11.3, the page starts at 11.4 (and the download site only has 12.1+)
http://en.opensuse.org/KDE_repositories#Qt


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on February 03, 2013, 12:32:13 AM
See this is one problem with linux (the other being that distributions make their own tools that should be standardized; yum, apt-get, yast... etc), it's a big mess to update after service life ends and even before because of spaghetti dependencies on shit that never works as expected if you touch one straw... So my solution as a software developer is to upgrade versions of dependencies ONLY when it's really really necessary.

So basically latest bitcoin is useless to me here...

I actually have SuSE 11.2, so which version of bitcoin uses QT 4.5.3 or older?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: notme on February 04, 2013, 07:34:08 PM
See this is one problem with linux (the other being that distributions make their own tools that should be standardized; yum, apt-get, yast... etc), it's a big mess to update after service life ends and even before because of spaghetti dependencies on shit that never works as expected if you touch one straw... So my solution as a software developer is to upgrade versions of dependencies ONLY when it's really really necessary.

So basically latest bitcoin is useless to me here...

I actually have SuSE 11.2, so which version of bitcoin uses QT 4.5.3 or older?

Keeping your software up to date not only makes your life much easier, it makes your data much safer.  I would sign transactions by hand before I used a distro that old to hold a bitcoin wallet.  There are way too many known exploits for the code you are running.

Rolling releases and constant updates FTW.  I love Arch :).


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: notme on February 04, 2013, 07:35:52 PM
Basically you are asking for support for a distro that the producer no longer supports.  Unless you want to compile and install the dependencies you need at the newer versions you are SOL.


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on February 06, 2013, 01:31:55 AM
Well I could run the latest bitcoin client on windows XP from 2001, so I don't know what your on about?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: Red Emerald on February 06, 2013, 01:44:29 AM
Well I could run the latest bitcoin client on windows XP from 2001, so I don't know what your on about?
Except with windows all of the dependencies are new and bundled with the client. You are trying to keep everything old except bitcoind...


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on February 06, 2013, 10:52:57 AM
So how come you can't bundle dependencies in linux like that?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: deepceleron on February 06, 2013, 02:19:03 PM
So how come you can't bundle dependencies in linux like that?

You can. http://statifier.sourceforge.net/

For all the libraries it would take, it would make a huge binary for Bitcoin.

I got that openSUSE distro, and bitcoind runs just fine. The problem is the platform's old QT 4.5.3 even after full updates. Qt is forward-compatible, meaning applications will generally continue working on new platforms, but new apps might not work on old libraries or compile in old Qt.

If you absolutely must have bitcoin-qt running, I would suggest getting and compiling qt 4.8.4, and setting the path to the new built libraries. It would be less work than attempting to build Bitcoin. http://qt-project.org/doc/qt-4.8/install-x11.html

Even less work is to get virtualbox and put a new distro on it.

If you haven't linked up the Evergreen extended maintenance repository, your 11.2 SUSE is full of security holes big enough to drive a malware truck through. http://en.opensuse.org/openSUSE:Evergreen_11.2#List_of_updates_for_11.2_from_Evergreen

edit-FIX: I built and installed qt-4.8.4 (http://qt-project.org/doc/qt-4.8/install-x11.html) on openSUSE 11.2.

Then in a terminal console:
export QTDIR="/usr/local/Trolltech/Qt-4.8.4/"
export PATH="${QTDIR}/bin:${PATH}"
export LD_LIBRARY_PATH="${QTDIR}/lib"
export CMAKE_PREFIX_PATH="${QTDIR}"
export PKG_CONFIG_PATH="${QTDIR}/lib/pkgconfig"
./bitcoin-qt


Bitcoin now launches just fine. Bitcoin "Help"->"About Qt" = "This program uses Qt version 4.8.4."


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: notme on February 07, 2013, 03:02:49 AM
So how come you can't bundle dependencies in linux like that?

You can. http://statifier.sourceforge.net/

For all the libraries it would take, it would make a huge binary for Bitcoin.

I got that openSUSE distro, and bitcoind runs just fine. The problem is the platform's old QT 4.5.3 even after full updates. Qt is forward-compatible, meaning applications will generally continue working on new platforms, but new apps might not work on old libraries or compile in old Qt.

If you absolutely must have bitcoin-qt running, I would suggest getting and compiling qt 4.8.4, and setting the path to the new built libraries. It would be less work than attempting to build Bitcoin. http://qt-project.org/doc/qt-4.8/install-x11.html

Even less work is to get virtualbox and put a new distro on it.

If you haven't linked up the Evergreen extended maintenance repository, your 11.2 SUSE is full of security holes big enough to drive a malware truck through. http://en.opensuse.org/openSUSE:Evergreen_11.2#List_of_updates_for_11.2_from_Evergreen

edit-FIX: I built and installed qt-4.8.4 (http://qt-project.org/doc/qt-4.8/install-x11.html) on openSUSE 11.2.

Then in a terminal console:
export QTDIR="/usr/local/Trolltech/Qt-4.8.4/"
export PATH="${QTDIR}/bin:${PATH}"
export LD_LIBRARY_PATH="${QTDIR}/lib"
export CMAKE_PREFIX_PATH="${QTDIR}"
export PKG_CONFIG_PATH="${QTDIR}/lib/pkgconfig"
./bitcoin-qt


Bitcoin now launches just fine. Bitcoin "Help"->"About Qt" = "This program uses Qt version 4.8.4."

My point exactly, although I guess I can agree with giving him the tools he's asking for even if it's bad for him.  I lean libertarian.


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on February 07, 2013, 09:44:19 PM
Ok, will definetly check this out...

Can you guys give me a scenario how my 11.2 install could get compromised?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: Red Emerald on February 08, 2013, 02:36:54 AM
Ok, will definetly check this out...

Can you guys give me a scenario how my 11.2 install could get compromised?
Read the CVEs linked from http://en.opensuse.org/openSUSE:Evergreen_11.2#List_of_updates_for_11.2_from_Evergreen

Do you run any of the programs listed?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: notme on February 09, 2013, 08:12:41 PM
Ok, will definetly check this out...

Can you guys give me a scenario how my 11.2 install could get compromised?
Read the CVEs linked from http://en.opensuse.org/openSUSE:Evergreen_11.2#List_of_updates_for_11.2_from_Evergreen

Do you run any of the programs listed?

I'm pretty sure he wan't to use the vulnerable version of Qt on that list :P.


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: Herodes on February 09, 2013, 08:15:39 PM
So what do I have to delete in .bitcoin to get the latest release to work?

Not sure if this is mentioned, but if you need to preserve coins, could you not send them temporarily to another wallet, then delete everything from the old version, then download the new binaries ?

After blockchain is synched, move the coins back to the new wallet ?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: deepceleron on February 09, 2013, 09:48:31 PM
So what do I have to delete in .bitcoin to get the latest release to work?

Not sure if this is mentioned, but if you need to preserve coins, could you not send them temporarily to another wallet, then delete everything from the old version, then download the new binaries ?

After blockchain is synched, move the coins back to the new wallet ?
You really didn't read anything in this thread, did you?


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: K1773R on February 10, 2013, 12:13:16 AM
So what do I have to delete in .bitcoin to get the latest release to work?

Not sure if this is mentioned, but if you need to preserve coins, could you not send them temporarily to another wallet, then delete everything from the old version, then download the new binaries ?

After blockchain is synched, move the coins back to the new wallet ?
You really didn't read anything in this thread, did you?
ignore function ftw :)


Title: Re: Upgrading from 3.2 gives Segmentation fault
Post by: rupy on February 18, 2013, 01:19:48 AM
Ok, FYI rolling updates is the solution; or tumbleweed for SuSE... the linux community has fixed the problem! :)

Too bad its only for 11.4 and above though... works great on my laptop! Incredible!