← Back to team overview

dolfin team mailing list archive

Re: scons / dorsal

 

On Tue, June 2, 2009 12:24, Martin Sandve Alnæs wrote:
> On Tue, Jun 2, 2009 at 10:47 AM, Johan Hake <hake@xxxxxxxxx> wrote:
>> On Tuesday 02 June 2009 10:28:11 Martin Sandve Alnæs wrote:
>>> I've tried to use dorsal on my home laptop which I just upgraded to
>>> Jaunty.
>>> I got some problems with trilinos (Harish: same as on my work laptop),
>>> and will recompile now after removing all trilinos.pc files around the
>>> system.
>>>
>>> I see from scons --help in dolfin that the path has been set correctly
>>> there:
>>>
>>> withTrilinosDir: Specify path to Trilinos ( /path/to/withTrilinosDir )
>>>     default: None
>>>     actual: /opt/fenics904
>>>
>>> I've found two issues I will call bugs:
>>>
>>> 1) dolfin scons didn't copy the trilinos.pc it generated to the
>>> installation directory. Should be an easy fix in dolfin scons.
>>
>> This sounds strange. This line in the SConstruct file should do that:
>>
>>  # We also like to install all generated pkg-config files.
>>  buildDataHash["pkgconfig"] +=
>>    scons.globFiles(Dir("#/scons/pkgconfig/").srcnode().abspath, "*.pc")
>
> I can find no such line:
>
> martinal@martinal-znote:~/dev/fenics904/dolfin-0.9.2$ find -name
> SConscript
> ./data/SConscript
> ./doc/SConscript
> ./dolfin/SConscript
> ./demo/SConscript
> ./test/SConscript
> ./sandbox/ilmarw/assembler_bench/Stokes_2D_TH/SConscript
> ./sandbox/ilmarw/assembler_bench/Laplace_2D/SConscript
> ./sandbox/ilmarw/assembler_bench/ICNS_3D_Momentum/SConscript
> ./sandbox/ilmarw/assembler_bench/Elasticity_3D/SConscript
> ./sandbox/ilmarw/assembler_bench/Stokes_2D_Stab/SConscript
> martinal@martinal-znote:~/dev/fenics904/dolfin-0.9.2$ find -name
> SConscript | xargs egrep buildData

In DOLFIN 0.9.2 buildDataHash is called ret and the line you are looking
for is 381 in dolfin/SConscript.

>> Where is your trilinos.pc situated?
>
> Which one? I had several before, one in the path.
> scons made a new one placed in the repository,
> now I've copied that manually to the installation directory.
> The libgaleri problem is now gone after the rebuild.
>
>
> Compiling C++ demos works fine now, but "import dolfin" gives:
>
> ImportError: /opt/fenics904/lib/libdolfin.so.0: undefined symbol:
> _Z26KSPMonitorTrueResidualNormP6_p_KSPidPv
>
> In [2]:
> Do you really want to exit ([y]/n)?
> martinal@martinal-znote:~$ c++filt
> _Z26KSPMonitorTrueResidualNormP6_p_KSPidPv
> KSPMonitorTrueResidualNorm(_p_KSP*, int, double, void*)
>
>
>
> Turns out that petsc isn't handled correctly either. It's built and
> installed by dorsal,
> and dolfin scons gets the right directory for it,
>
> withPetscDir: Specify path to PETSc ( /path/to/withPetscDir )
>     default: None
>     actual: /opt/fenics904
>
> But no pkg-config file has even been generated in this case:
> martinal@martinal-znote:~/dev/fenics904/dolfin-0.9.2$ ls scons/pkgconfig/
> boost.pc  gmp.pc  mtl4.pc  parmetis.pc  scotch.pc  trilinos.pc

No, because you already have one that is found in $PKG_CONFIG_PATH.

Johannes

> martinal@martinal-znote:~/dev/fenics904/dolfin-0.9.2$ pkg-config --cflags
> petsc
> -I/usr/lib/petscdir/2.3.3/bmake/linux-gnu-c-opt
> -I/usr/lib/petscdir/2.3.3/include -I/usr/lib/openmpi/include
> -I/usr/lib/openmpi/lib -I.
>
> Martin
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev
>




Follow ups

References