Johannes Ring wrote: > On Sun, August 2, 2009 23:41, Harish Narayanan wrote: >> Martin Sandve Alnæs wrote: >>> On Tue, Jun 2, 2009 at 12:34 PM, Johannes Ring <joha...@simula.no> >>> wrote: >>>> On Tue, June 2, 2009 12:24, Martin Sandve Alnæs wrote: >>>>> On Tue, Jun 2, 2009 at 10:47 AM, Johan Hake <h...@simula.no> 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: >>>>> >>>>> marti...@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 >>>>> marti...@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)? >>>>> marti...@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: >>>>> marti...@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. >>> I consider this behaviour a significant bug. A new one should be >>> generated if >>> the $PKG_CONFIG_PATH version doesn't match the manually specified >>> version. >> Recall this (fairly epic) thread from earlier this year: >> http://www.mail-archive.com/dolfin-dev@fenics.org/msg08416.html >> >> As a result of this discussion, Johannes implemented the current DOLFIN >> build sequence that goes: >> >> scons configure >> scons >> scons install >> >> But I am still running into something like the original issue. >> >> When I call scons with a withPetscdir=/foo/bar, it creates a petsc >> pkgconfig file that looks correct (i.e., it points to /foo/bar). >> However, when it attempts to test for slepc while configuring, the >> compilation+link command (as reported in simula_scons.log) points to a >> different system petsc path. I am not sure where it is picking this up >> from, but I think this is a problem in the slepc pkgconfig generator. > > Does it work as expected if you specify both withPetscDir and withSlepcDir > in the configure step? Note: You should also define the PETSC_ARCH > variable.
I recall all three (PETSC_ARCH, withPetscDir, withSlepcDir) being set when I ran into this, but I will check it more carefully. Harish _______________________________________________ DOLFIN-dev mailing list DOLFIN-dev@fenics.org http://www.fenics.org/mailman/listinfo/dolfin-dev