Why am I getting this make error w/ 0.4.0rc1 on Ubuntu

5

Building 0.4.0rc1 in Ububtu via make -f makefile.unix returns the following errors/warnings:

ui.cpp: In member function 'virtual void CMainFrame::OnIconize(wxIconizeEvent&)':
ui.cpp:488:25 warning: 'bool wxIconizeEvent::Iconized() const' is deprecated (declared at /usr/local/include/wx-2.9/wx/event.h:2150)
ui.cpp:456:43 warning: 'bool wxIconizeEvent::Iconized() const' is deprecated (declared at /usr/local/include/wx-2.9/wx/event.h:2150)
ui.cpp: in function 'void SetStartOnSytstemStartup(bool)':
ui.cpp:1808:39: error: 'class boost::filesystem3::path' has no member named 'native_file_string'
make: *** [obj/ui.o] Error 1

Does anyone know how I could fix this? I'm guessing it's an issue with my libraries...

Alex Waters

Posted 2011-09-04T18:36:23.340

Reputation: 3 101

Answers

6

The first two lines are just warnings that can be ignored. But the error is a known issue caused by Bitcoin's use of a deprecated API that was removed in your version of Boost. The fix is to modify src/ui.cpp around line 1809 as follows:

  {
     if (!fAutoStart)
     {
-        unlink(GetAutostartFilePath().native_file_string().c_str());
+        unlink(GetAutostartFilePath().c_str());
     }
     else
     {

(Remove the line marked with a - and replace it with the line marked with a +.)

David Schwartz

Posted 2011-09-04T18:36:23.340

Reputation: 48 957

Thank you David for your pinpoint accuracy and help. Your time is valued, and your contributions to the community are appreciated! – Alex Waters – 2011-09-05T12:46:32.087

0

Depending on your version, here are a few resources.

For 10.04 there is a good guide here and an additional resource here.

For 11.04 this question may be a duplicate.

David Perry

Posted 2011-09-04T18:36:23.340

Reputation: 14 120

I am running 11.04, but this is not a duplicate of that question. Thank you for the 10.04 resources though - maybe I will find something in there – Alex Waters – 2011-09-04T18:59:05.083