[Dune] [Dune-devel] Compilation Errors in Example From "Getting started with DUNE"

Adrian G Maroni agmaroni at gmail.com
Thu Jun 30 16:16:34 CEST 2016


Hello, Carsten,
                      Would you like me to send the file through the
mailing list?

 There are also many other errors, most related to interpolate.hh. My
compiler version is:

$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/5.3.1/lto-wrapper
Target: x86_64-redhat-linux


Thread model: posix
gcc version 5.3.1 20160406 (Red Hat 5.3.1-6) (GCC)



Hope that helps.

Regards,

Adrian




On Thu, Jun 30, 2016 at 10:49 AM, Carsten Gräser
<graeser at mi.fu-berlin.de> wrote:
> Hi Adrian,
> the error originates in a call to interpolate() in
> your application dune-poissonequation.cc. So in order
> to find out the problem it would be helpful to see
> this file. Furthermore knowing your compiler-version
> would be nice.
>
> @Oliver, Christian: I guess that this is related
> to the failing overload resolution of interpolate()
> that we have seen and already fixed in master.
> Did you port this to the 2.4 branch?
>
> Best,
> Carsten
>
> Am 30.06.2016 um 15:22 schrieb Oliver Sander:
>> This is a dune-functions problem.  I need to pass this to somebody else.
>>
>> On 30.06.2016 14:48, Adrian G Maroni wrote:
>>> Thanks! Now UG 3.11.0 compiles and installs correctly with the dune
>>> directive. But I still get a long list of compilation errors with the
>>> Poisson example. The first error is:
>>>
>>>
>>> /usr/local/include/dune/functions/functionspacebases/interpolate.hh:
>>> In instantiation of ‘void Dune::Functions::interpolate(const B&, const
>>> TP&, C&&, const F&, const BV&) [with B =
>>> Dune::Functions::DefaultGlobalBasis<Dune::Functions::PQkNodeFactory<Dune::GridView<Dune::UGGridLeafGridViewTraits<const
>>> Dune::UGGrid<2>, (Dune::PartitionIteratorType)4u> >, 1,
>>> Dune::Functions::FlatMultiIndex<long unsigned int>, long unsigned int>
>>>> ; TP = Dune::BlockVector<Dune::FieldVector<double, 1> >; C =
>>> main(int, char**)::<lambda(auto:3)>&; F = std::vector<char>; BV =
>>> Dune::Functions::Imp::AllTrueBitSetVector]’:
>>> /usr/local/include/dune/functions/functionspacebases/interpolate.hh:322:15:
>>>   required from ‘void Dune::Functions::interpolate(const B&, const
>>> TreePath&, C&&, const F&) [with B =
>>> Dune::Functions::DefaultGlobalBasis<Dune::Functions::PQkNodeFactory<Dune::GridView<Dune::UGGridLeafGridViewTraits<const
>>> Dune::UGGrid<2>, (Dune::PartitionIteratorType)4u> >, 1,
>>> Dune::Functions::FlatMultiIndex<long unsigned int>, long unsigned int>
>>>> ; TreePath = Dune::BlockVector<Dune::FieldVector<double, 1> >; C =
>>> main(int, char**)::<lambda(auto:3)>&; F = std::vector<char>]’
>>> /home/ptr/Documents/Projects/ResearchProjects/DUNE/DUNE_2.4.1/dune-examples/dune-poissonequation/src/dune-poissonequation.cc:340:67:
>>>   required from here
>>> /usr/local/include/dune/functions/functionspacebases/interpolate.hh:277:77:
>>> error: no matching function for call to
>>> ‘makeDefaultNodeToRangeMap(const
>>> Dune::Functions::DefaultGlobalBasis<Dune::Functions::PQkNodeFactory<Dune::GridView<Dune::UGGridLeafGridViewTraits<const
>>> Dune::UGGrid<2>, (Dune::PartitionIteratorType)4u> >, 1,
>>> Dune::Functions::FlatMultiIndex<long unsigned int>, long unsigned int>
>>>> &, const Dune::BlockVector<Dune::FieldVector<double, 1> >&)’
>>>    interpolateTreeSubset(basis, treePath, coeff, f,
>>> makeDefaultNodeToRangeMap(basis, treePath), bitVector);
>>>                                                                              ^
>>>
>>> Thanks!
>>>
>>> Regards,
>>>
>>> Adrian
>>>
>>>
>>>
>>>
>>> On Thu, Jun 30, 2016 at 9:20 AM, Oliver Sander
>>> <oliver.sander at tu-dresden.de> wrote:
>>>> Older UG versions like 3.11 are still C, but they need to be compiled as C++ when
>>>> building for Dune.  This is not mentioned on the homepage anymore, because later
>>>> releases of UG build as C++ automatically.  Therefore, please either switch to
>>>> UG-3.12.1 (UG-3.13 will not work for different reasons), or force you toolchain
>>>> to build as C++ by saying
>>>>
>>>> ./configure CC=g++ --enable-dune
>>>>
>>>> Best,
>>>> Oliver
>>>>
>>>>
>>>> On 30.06.2016 14:13, Adrian G Maroni wrote:
>>>>> Hey, Oliver,
>>>>>                   A compilation error caused when building UG 3.11.0
>>>>>  with --enable-dune:
>>>>>
>>>>> libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../low
>>>>> -I../../gm -I../../dev -I../../dom -I../../np -I../../ui
>>>>> -I../../graphics/uggraph -I../../np/algebra -I../../np/udm
>>>>> -I../../np/procs -I../../parallel -I../../parallel/ddd
>>>>> -I../../parallel/ppif -I../../parallel/ddd/include
>>>>> -I../../parallel/dddif -I../../parallel/util -DUGLIB -DFOR_DUNE -D_2
>>>>> -g -O2 -MT libgg2_la-ggmain.lo -MD -MP -MF .deps/libgg2_la-ggmain.Tpo
>>>>> -c ggmain.c -o libgg2_la-ggmain.o
>>>>> In file included from ggmain.c:61:0:
>>>>> ../../gm/refine.h:272:49: error: expected ';', ',' or ')' before '=' token
>>>>>                              , INT useRefineClass=0
>>>>>                                                  ^
>>>>> Makefile:415: recipe for target 'libgg2_la-ggmain.lo' failed
>>>>>
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Adrian
>>>>>
>>>>> On Thu, Jun 30, 2016 at 9:02 AM, Oliver Sander
>>>>> <oliver.sander at tu-dresden.de> wrote:
>>>>>>
>>>>>>
>>>>>> On 30.06.2016 14:01, Adrian G Maroni wrote:
>>>>>>> Hi Dominic,
>>>>>>>                  I answered "yes", indeed. I have UG version 3.11.0,
>>>>>>> but I was forced to build it without --enable-dune directive. I was
>>>>>>
>>>>>> You absolutely need --enable-dune.  What forced you to build without it?
>>>>>>
>>>>>>> unable to build version 3.13.0 in any way. Could that be a possible
>>>>>>> reason? Which UG version is minimally needed? TNX
>>>>>>>
>>>>>>> Cheers,
>>>>>>>
>>>>>>> Adrian
>




More information about the Dune mailing list