← Back to team overview

dolfin team mailing list archive

Re: libboost_program_options is not included during linking process

 

Den 11.11.10 23.17, skrev Andy Ray Terrel:
On Thu, Nov 11, 2010 at 4:14 PM, Andre Massing<massing@xxxxxxxxx>  wrote:
Den 11.11.10 20.55, skrev Anders Logg:
On Thu, Nov 11, 2010 at 08:45:39PM +0100, Andre Massing wrote:
Den 11.11.10 18.50, skrev Anders Logg:
On Thu, Nov 11, 2010 at 06:34:38PM +0100, Andre Massing wrote:
Den 11.11.10 17.23, skrev Johannes Ring:
On Thu, Nov 11, 2010 at 3:35 PM, Andre Massing<massing@xxxxxxxxx>
  wrote:
Den 11.11.10 15.23, skrev Johannes Ring:
On Thu, Nov 11, 2010 at 3:14 PM, Andre Massing<massing@xxxxxxxxx>
    wrote:
Den 11.11.10 15.04, skrev Johannes Ring:
On Thu, Nov 11, 2010 at 2:58 PM, Andre Massing<massing@xxxxxxxxx>
  wrote:
Hi!

I just encountered another strange error during compilation of
the
latest
dolfin development
version on a Mac OS X platform. I got the error

Linking CXX shared library libdolfin.dylib
[..]
Undefined symbols:



  "boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t,
std::basic_string<char, std::char_traits<char>,
std::allocator<char>
  >
const&, std::basic_string<char, std::char_traits<char>,
std::allocator<char>
const&)", referenced from:
Switching VERBOSE=1 reveals that libboost_program_options was not
included
in the list of libs to link with.
Any clue how to fix that?
I had a similar problem a few days ago. I think it was after I did
a
clean build of DOLFIN that the problem went away. Have you tried
that?

Johannes
Actually I started with a clean build in the first place :)
Okay, could you attach your CMakeCache.txt file?

Attached.
Thanks. It looks okay so I don't really know. You could try to specify
the Boost libraries manually, like this:


-DBoost_PROGRAM_OPTIONS_LIBRARY:FILEPATH=/opt/local/lib/libboost_program_options-mt.dylib

Are you sure you have the latests DOLFIN? And does it work if you
revert back to revision 5236?
I have tried both, and neither one helped. I am really stuck now,
since I can not compile any of my dolfin libs :(
Install Ubuntu Maverick on your MacBook. Not only will you escape your
Boost troubles but you will get algebraic multigrid, a working package
manager, and a free/open-source OS. ;-)
As my last investigation showed, might run into the same trouble as
soon as ubuntu updates cmake,
maybe you will be saved from this because the brave Mac users hit it
first :)  And I have to admit that I
am very happy with my battery time, suspend and hibernate modus ;)
and a working graphic card. (Old issue wasn't
resolved with Maverick!)
BTW, I just checked the changelog of cmake
and it seems there were quite some changes in the cmake
findBoost.cmake from 2.8.2 to 2.8.3.
So it seems, that is really cmake related
An concerning the last argument about petsc and amg: Fresh news from
my *Mac OS X* , just ran NS demo:

Computing tentative velocity
   Applying boundary conditions to linear system.
   Solving linear system of size 3874 x 3874 (PETSc Krylov solver).
   PETSc Krylov solver (gmres, ilu) converged in 6 iterations.
Computing pressure correction
   Applying boundary conditions to linear system.
   Applying boundary conditions to linear system.
   Solving linear system of size 505 x 505 (PETSc Krylov solver).
   PETSc Krylov solver (gmres, hypre) converged in 5 iterations.
   PETSc Krylov solver Hypre preconditioner method: boomeramg
Computing velocity correction
   Applying boundary conditions to linear system.
   Solving linear system of size 3874 x 3874 (PETSc Krylov solver).
   PETSc Krylov solver (gmres, ilu) converged in 6 iterations.
Time-stepping
[=======================================================] 100.0%

So finally I got openmpi running with fortran and have a full petsc
installation on my Mac. :-D
Please share the magical incantations that made this possible.

Yes, I was planning to write a short howto in the fenics wiki, but basically I did 1) install fortran compiler from the webpage recommended by petsc (took just the gfortran mac package) from
http://prdownloads.sourceforge.net/hpc/gfortran-snwleo-intel-bin.tar.gz?download
2) compiled my own openmpi version with FC=gfortran F77=gfortran and a prefix / installation dir you like. installed it and added only the bin path of the openmpi installation in the front of my PATH variable.
3) used dorsal with the petsc package to install everything.
Will reiterate the procedure on my other dolfin installations here ...
--
Andre


-- Andy

Great work! But I don't understand why you want to go through all that
pain. I need something that just works (=Ubuntu)! :-)
Well,  the same reasoning (should just work) applies the other way around
and pushed me away from Ubuntu, since it was not (is still not possible)  to
fix opengl issues for graphic cards even if there exists a rather
established open source driver.
And probably all the bad memories of pain in the beginning with getting
things running on Ubuntu are fading away :)
But in the end it is just a matter of taste and  habits, even if you think I
have a bad taste :)

Cheers,
--
Andre

--
Anders


_______________________________________________
Mailing list: https://launchpad.net/~dolfin
Post to     : dolfin@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~dolfin
More help   : https://help.launchpad.net/ListHelp





References