Page 1 of 1

Boost C++ should be removed from svn

Posted: Tue Nov 24, 2009 3:44 pm
by Vadim
Hi everyone,
I have a question. Do we really need Boost C++ sources in svn? We have small part of Boost library, of course. But this library difficult to upgrade due to its internal changes and reorganizations in files. I plan to remove library from svn. To compile mmex someone should download latest Boost C++ stable release and unpack it. Then we add new environment variable to locate sources of library in our project as we did with WXWIN. I will do this on next weekends.

Re: Boost C++ should be removed from svn

Posted: Sun Dec 06, 2009 3:07 pm
by madhan
The library was included to make it easier for developers to get going. I am ok either way, but I prefer less work, and I think there is really no right answer here.

Re: Boost C++ should be removed from svn

Posted: Mon Dec 28, 2009 12:23 pm
by Nikolay
To compile the trunk version, I had to copy the folder boost from the 0.9.5.x version to "include" folder.

For example util.h has the line:
#include "boost/shared_ptr.hpp"

But there is no shared_ptr.hpp file in the trunk.

Re: Boost C++ should be removed from svn

Posted: Tue Dec 29, 2009 7:16 am
by Vadim
Read readme-s files how to build project. Install library and set BOOSTDIR environment variable. That's all.

Re: Boost C++ should be removed from svn

Posted: Wed Dec 30, 2009 8:31 pm
by omalleypat
Would it be a good idea to setup boost with svn:externals?

http://svnbook.red-bean.com/nightly/en/ ... rnals.html

Just a thought.

Re: Boost C++ should be removed from svn

Posted: Sun Feb 07, 2010 3:23 pm
by omalleypat
So I can't get this to compile on mac anymore since boost was removed, and I have no idea how to fix it. I'd like to keep helping to develop this project, but I also don't have the desire to waste a ton of time trying to fix something that wasn't really broken, so I'm kind of dead in the water over here.

Anyway I downloaded boost and added it to the header search paths, but when I compile I get these messages:

Code: Select all

Undefined symbols:
  "mmReportSummary::mmReportSummary(mmCoreDB*)", referenced from:
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "mmReportCategoryExpenses::mmReportCategoryExpenses(mmCoreDB*, bool, wxDateTime, wxDateTime, wxString const&, int)", referenced from:
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "mmReportBudgetingSetup::mmReportBudgetingSetup(mmCoreDB*, int)", referenced from:
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "mmReportTransactionStats::mmReportTransactionStats(mmCoreDB*, int)", referenced from:
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "mmReportPayeeExpenses::mmReportPayeeExpenses(mmCoreDB*, bool, wxDateTime, wxDateTime)", referenced from:
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "mmReportIncomeExpenses::mmReportIncomeExpenses(mmCoreDB*, bool, wxDateTime, wxDateTime)", referenced from:
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "vtable for mmReportSummaryAssets", referenced from:
      __ZTV21mmReportSummaryAssets$non_lazy_ptr in mmex.o
  "_sqlite3_sourceid", referenced from:
      wxSQLite3Database::GetSourceId()       in wxsqlite3.o
  "vtable for mmReportSummaryStocks", referenced from:
      __ZTV21mmReportSummaryStocks$non_lazy_ptr in mmex.o
  "mmReportCashFlow::mmReportCashFlow(mmCoreDB*, wxArrayString const*)", referenced from:
      mmGUIFrame::OnCashFlowSpecificAccounts()       in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "mmReportBudgetingPerformance::mmReportBudgetingPerformance(mmCoreDB*, int)", referenced from:
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "mmex::Destroy(wxWindow*)", referenced from:
      __ZN4mmex7DestroyEP8wxWindow$non_lazy_ptr in aboutdialog.o
      __ZN4mmex7DestroyEP8wxWindow$non_lazy_ptr in mmex.o
      __ZN4mmex7DestroyEP8wxWindow$non_lazy_ptr in qifimport.o
      __ZN4mmex7DestroyEP8wxWindow$non_lazy_ptr in univcsvdialog.o
      __ZN4mmex7DestroyEP8wxWindow$non_lazy_ptr in util.o
  "mmReportIncExpensesOverTime::mmReportIncExpensesOverTime(mmCoreDB*, int)", referenced from:
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
      mmGUIFrame::OnSelChanged(wxTreeEvent&)        in mmex.o
  "mmReportTransactions::mmReportTransactions(std::vector<boost::shared_ptr<mmBankTransaction>, std::allocator<boost::shared_ptr<mmBankTransaction> > >*, mmCoreDB*)", referenced from:
      mmGUIFrame::OnTransactionReport(wxCommandEvent&)        in mmex.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
Hope someone can help...

Pat

Re: Boost C++ should be removed from svn

Posted: Sun Feb 07, 2010 8:18 pm
by madhan
I agree, the idea is to make development easier and practical, not make the source code some ideal that makes development really hard.
I haven't even updated to latest because I know I have to do a lot of work to set it up.

Re: Boost C++ should be removed from svn

Posted: Mon Feb 08, 2010 7:31 am
by Vadim
I strongly disagree with decision to revert boost into svn. mmex sources are tiny but boost has > 30 Mb compressed archive and much more uncompressed. This resembles me boff about "portable gnu cash, 78 Mb". The stupid thing.

Re: Boost C++ should be removed from svn

Posted: Mon Feb 08, 2010 9:56 pm
by elliswr
I really think it would be better to leave boost in. The removal of boost made compiling much more difficult on the mac side, and building boost via macports was not much help. It created many different boost libraries like boost_math and others. That is why contribution from the mac devs has been halted for the past couple of months.

If we do want to leave it out, there needs to be detailed instructions provided on how to properly build the library for use with mmex and how to properly link to it.

Re: Boost C++ should be removed from svn

Posted: Tue Feb 09, 2010 7:21 am
by Vadim
Boost does not require compilation (its parts that we are using). Unpack archive into some folder like a /usr/local/lib/boost-1.42. Then append switch to all calls of compiler:
gcc -I/usr/local/lib/boost-1.42

That's all. If you get errors, this means compiler can't find boost headers.
http://www.boost.org/doc/libs/1_42_0/mo ... -libraries

Re: Boost C++ should be removed from svn

Posted: Wed Feb 10, 2010 12:22 am
by elliswr
Thanks Vadim. I'll try it out this weekend when I get time and post back.