I have made some progress in my attempts to get ledger compiled on
FreeBSD 10 but my efforts are about to end.  I abandoned the clang
compiler pretty early on: it gave all sorts of weird compilation and
linking errors.  Since I had g++ 4.8.4 available as a FreeBSD package,
I concentrated on using that.  There was some tinkering required to
totally disable clang but eventually I got the build process to use
only the GNU compiler.

I had been getting linker errors related to the system-installed Boost
libraries, so the next step was to compile my own version with g++ and
install it locally.  Then on to compile ledger proper.  Surprisingly,
after a false start or two, I got it to compile and link.  However,
the executable abended with "/usr/lib/libstdc++.so.6: version
`GLIBCXX_3.4.11' not found".  Sure enough, libstdc++ in /usr/local
only goes up to 3.4.9.  There is, however, a stdc++ shared library in
/usr/local/gcc48 that does have GLIBCXX_3.4.11.  However, I'll be
damned if I can figure out how to tell the compiler or ledger to use
this library.  Specifying LD_LIBRARY_PATH on the command line results
in a segfault.

<rant>cmake may be a great system and make things much easier when
things are going smoothly ...  But when things go wrong and you need
to see what it's doing and modify/override its behavior, it seems
bloody well impossible and opaque.  It has left me with a very bad
experience so I am quite turned off by it now.</rant>

I am tired of fighting with this recalcitrant software so I am
abandoning my efforts to get ledger compiled on FreeBSD 10.  I would
to to express my appreciation to Jostein Berntsen who tried very hard
to help me in this endeavor and gave many suggestions.

So what to do.....   1) Abandon my BSD system and go back to Linux?
Could be done but despite some annoying crashes recently I am loath to
give up ZFS and it would be a major PITA.  2) Abandon ledger and go
back to GnuCash or other system?  No, I like ledger's text mode files
and the Emacs's ledger-mode.

So I installed hledger (even though I don't know anything about
Haskell).  Bingo, it compiled and installed with one "cabal" command
without a single problem.  What a difference!  I realize it is
different in some ways from Ledger, but I think my journal is simple
enough that I should be okay.


On Mon, Jun 30, 2014 at 9:58 AM, y2s1982 <[email protected]> wrote:
> Whoa, I've been looking for an answer to this riddle myself.
>
> I'm not a program and do not have a clear grasp of what cmake does.  Having
> said that, though, I wonder how Mac got around to installing the program
> since they also use clang in a (heavily modified) BSD environment as far as
> I know.
> Their instruction seems fairly straight forward; what are the differences in
> two methods?  Could it be possible for us to "fool" cmake into giving us the
> same condition Mac gets?
>
>
>
>
> On Monday, June 30, 2014 4:29:38 PM UTC+9, Jostein Berntsen wrote:
>>
>>
>>
>> On Monday, June 30, 2014 7:26:46 AM UTC+2, Chris Leyon wrote:
>>>
>>> Update: I've given up on clang.  I never did figure out how to tell
>>> cmake and/or acprep to pass a new option like "-stdlib=..." to the
>>> compilation phase.  I assume it's possible somehow.  So I ended up
>>> grabbing the compilation commands cmake produced and copying them into
>>> a script and I manually added the option you suggested and recompiled.
>>> Then it complained about not finding several standard include library
>>> files.
>>>
>>> So I am now trying g++.  Again, due to cmake
>>>
>>
>> Can you try to compile with therse options for acprep?
>>
>> ./acprep --debug --python --compiler="g++-4.8.4 -lboost_regex
>> -lboost_iostreams" --boost=/your-boost-root-path
>>
>> Jostein
>>
>>
>>
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "Ledger" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Ledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to