dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #06711
Re: Problems with scons and swig-rebuilding
On Tue, Mar 18, 2008 at 10:29:40AM +0100, Johan Hake wrote:
> On Tuesday 18 March 2008 10:09:28 Anders Logg wrote:
> > After pulling the latest changeset, I get the following error when
> > building:
> >
> > dolfin/swig/dolfin_wrap.cc: In function "PyObject*
> > _wrap_PETScVector_createScatterer(PyObject*, PyObject*)":
> > dolfin/swig/dolfin_wrap.cc:40294: fel: "createScatterer" har inte en
> > medlem av "dolfin::PETScVector"
> > dolfin/swig/dolfin_wrap.cc: In function "PyObject*
> > _wrap_PETScVector_gather(PyObject*, PyObject*)":
> > dolfin/swig/dolfin_wrap.cc:40365: fel: "gather" har inte en medlem av
> > "dolfin::PETScVector"
> > dolfin/swig/dolfin_wrap.cc: In function "PyObject*
> > _wrap_PETScVector_scatter(PyObject*, PyObject*)":
> > dolfin/swig/dolfin_wrap.cc:40436: fel: "scatter" har inte en medlem av
> > "dolfin::PETScVector"
> > dolfin/swig/dolfin_wrap.cc: In function "PyObject*
> > _wrap_PETScVector_fromArray(PyObject*, PyObject*)":
> > dolfin/swig/dolfin_wrap.cc:40510: fel: "fromArray" har inte en medlem
> > av "dolfin::PETScVector"
> > dolfin/swig/dolfin_wrap.cc: In function "PyObject*
> > _wrap_PETScVector_toArray(PyObject*, PyObject*)":
> > dolfin/swig/dolfin_wrap.cc:40584: fel: "toArray" har inte en medlem av
> > "dolfin::PETScVector"
> > scons: *** [dolfin/swig/dolfin_wrap.os] Error 1
> > scons: building terminated because of errors.
> >
> > The problem is obviously that dolfin_wrap.cc needs to be regenerated
> > after an interface change. Why is this not detected by the build
> > system?
>
> I think the scanner check the [%,#]include file.[i,h] files for changes. When
> you set/unset a define you wont change any thing in the underlaying files and
> SCons do not recognize it.
>
> If this is right, we need to check for changes in optional defines, and scan
> the included files for any appearance for ifdef's.
>
> > Having to touch dolfin.i was one of the annoyances with the old build
> > system.
>
> It should work fine for _actual_ file changes.
This was an actual file change (in PETScVector.h). Maybe the problem
is that this file is included from dolfin_headers.h which in turn is
included in dolfin.i? So it's not directly seen by the scanner?
--
Anders
Follow ups
References