← Back to team overview

dolfin team mailing list archive

Re: compiling issues

 

Yes I'm sure (just tried again during lunchtime), I've tried to update also ufc but the result is the same.

Alessio


On Mon, Dec 01, 2008 at 10:10:44AM +0100, Alessio Quaglino wrote:
> I've been working at modifying the demos and compiling them using (maybe not the cleverest way though): 
> 
> scons enablePydolfin=no enableCholmod=no enableUmfpack=yes enableDemos=yes
> 
> however I recently got several crashes of my OS while compiling the demos (just after the demo gets compiled and when I restart my system I can actually run the generated demo program!), which were totally unexpected since everything went smoothly for 2 weeks before that and I just changed a form in the elasticity demo, so I had the very bad idea of downloading a fresh installation of dolfin and ffc. Now, as long as I compile the fresh repository with the following:
> 
> cd ~/FEniCS/dolfin/ 
> scons enablePydolfin=no enableCholmod=no enableUmfpack=yes
> sudo scons install
> scons enablePydolfin=no enableCholmod=no enableUmfpack=yes enableDemos=yes
> 
> everithing is fine, but if I recompile any form in a random demo folder:
> 
> cd ~/FEniCS/dolfin/demo/pde/elasticity/cpp/ 
> ffc -l dolfin *.form
> 
> I get the following unexplainable errors:
> 
> mpic++ -o demo/pde/elasticity/cpp/main.o -c -Wall -pipe -ansi -Werror -DDEBUG -g -DNDEBUG -O2 -DHAS_MPI=1 -DMPICH_IGNORE_CXX_SEEK -DPACKAGE_VERSION=\"0.8.1\" -DHAS_UMFPACK=1 -DHAS_GTS=1 -bind_at_load -I. -I. -Idolfin -I/System/Library/Frameworks/Python.framework/Versions/2.5/include -I/sw/include -I/opt/local/include/libxml2 -I/sw/include/suitesparse -I/opt/local/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include demo/pde/elasticity/cpp/main.cpp
> demo/pde/elasticity/cpp/Elasticity.h: In constructor 'ElasticityBilinearForm::ElasticityBilinearForm(const dolfin::FunctionSpace&, const dolfin::FunctionSpace&)':
> demo/pde/elasticity/cpp/Elasticity.h:15539: error: no match for 'operator=' in '((ElasticityBilinearForm*)this)->ElasticityBilinearForm::<anonymous>.dolfin::Form::_ufc_form = (((UFC_ElasticityBilinearForm*)operator new(4u)), (<anonymous>->UFC_ElasticityBilinearForm::UFC_ElasticityBilinearForm(), <anonymous>))'
> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:474: note: candidates are: std::tr1::shared_ptr<const ufc::form>& std::tr1::shared_ptr<const ufc::form>::operator=(const std::tr1::shared_ptr<const ufc::form>&)
> demo/pde/elasticity/cpp/Elasticity.h: In constructor 'ElasticityBilinearForm::ElasticityBilinearForm(std::tr1::shared_ptr<const dolfin::FunctionSpace>, std::tr1::shared_ptr<const dolfin::FunctionSpace>)':
> demo/pde/elasticity/cpp/Elasticity.h:15551: error: no match for 'operator=' in '((ElasticityBilinearForm*)this)->ElasticityBilinearForm::<anonymous>.dolfin::Form::_ufc_form = (((UFC_ElasticityBilinearForm*)operator new(4u)), (<anonymous>->UFC_ElasticityBilinearForm::UFC_ElasticityBilinearForm(), <anonymous>))'
> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:474: note: candidates are: std::tr1::shared_ptr<const ufc::form>& std::tr1::shared_ptr<const ufc::form>::operator=(const std::tr1::shared_ptr<const ufc::form>&)
> demo/pde/elasticity/cpp/Elasticity.h: In constructor 'ElasticityBilinearForm::ElasticityBilinearForm(const dolfin::FunctionSpace&, const dolfin::FunctionSpace&, dolfin::Function&, dolfin::Function&)':
> demo/pde/elasticity/cpp/Elasticity.h:15568: error: no match for 'operator=' in '((ElasticityBilinearForm*)this)->ElasticityBilinearForm::<anonymous>.dolfin::Form::_ufc_form = (((UFC_ElasticityBilinearForm*)operator new(4u)), (<anonymous>->UFC_ElasticityBilinearForm::UFC_ElasticityBilinearForm(), <anonymous>))'
> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:474: note: candidates are: std::tr1::shared_ptr<const ufc::form>& std::tr1::shared_ptr<const ufc::form>::operator=(const std::tr1::shared_ptr<const ufc::form>&)
> demo/pde/elasticity/cpp/Elasticity.h: In constructor 'ElasticityBilinearForm::ElasticityBilinearForm(std::tr1::shared_ptr<const dolfin::FunctionSpace>, std::tr1::shared_ptr<const dolfin::FunctionSpace>, dolfin::Function&, dolfin::Function&)':
> demo/pde/elasticity/cpp/Elasticity.h:15583: error: no match for 'operator=' in '((ElasticityBilinearForm*)this)->ElasticityBilinearForm::<anonymous>.dolfin::Form::_ufc_form = (((UFC_ElasticityBilinearForm*)operator new(4u)), (<anonymous>->UFC_ElasticityBilinearForm::UFC_ElasticityBilinearForm(), <anonymous>))'
> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:474: note: candidates are: std::tr1::shared_ptr<const ufc::form>& std::tr1::shared_ptr<const ufc::form>::operator=(const std::tr1::shared_ptr<const ufc::form>&)
> demo/pde/elasticity/cpp/Elasticity.h: In constructor 'ElasticityLinearForm::ElasticityLinearForm(const dolfin::FunctionSpace&)':
> demo/pde/elasticity/cpp/Elasticity.h:15643: error: no match for 'operator=' in '((ElasticityLinearForm*)this)->ElasticityLinearForm::<anonymous>.dolfin::Form::_ufc_form = (((UFC_ElasticityLinearForm*)operator new(4u)), (<anonymous>->UFC_ElasticityLinearForm::UFC_ElasticityLinearForm(), <anonymous>))'
> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:474: note: candidates are: std::tr1::shared_ptr<const ufc::form>& std::tr1::shared_ptr<const ufc::form>::operator=(const std::tr1::shared_ptr<const ufc::form>&)
> demo/pde/elasticity/cpp/Elasticity.h: In constructor 'ElasticityLinearForm::ElasticityLinearForm(std::tr1::shared_ptr<const dolfin::FunctionSpace>)':
> demo/pde/elasticity/cpp/Elasticity.h:15653: error: no match for 'operator=' in '((ElasticityLinearForm*)this)->ElasticityLinearForm::<anonymous>.dolfin::Form::_ufc_form = (((UFC_ElasticityLinearForm*)operator new(4u)), (<anonymous>->UFC_ElasticityLinearForm::UFC_ElasticityLinearForm(), <anonymous>))'
> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:474: note: candidates are: std::tr1::shared_ptr<const ufc::form>& std::tr1::shared_ptr<const ufc::form>::operator=(const std::tr1::shared_ptr<const ufc::form>&)
> demo/pde/elasticity/cpp/Elasticity.h: In constructor 'ElasticityLinearForm::ElasticityLinearForm(const dolfin::FunctionSpace&, dolfin::Function&)':
> demo/pde/elasticity/cpp/Elasticity.h:15666: error: no match for 'operator=' in '((ElasticityLinearForm*)this)->ElasticityLinearForm::<anonymous>.dolfin::Form::_ufc_form = (((UFC_ElasticityLinearForm*)operator new(4u)), (<anonymous>->UFC_ElasticityLinearForm::UFC_ElasticityLinearForm(), <anonymous>))'
> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:474: note: candidates are: std::tr1::shared_ptr<const ufc::form>& std::tr1::shared_ptr<const ufc::form>::operator=(const std::tr1::shared_ptr<const ufc::form>&)
> demo/pde/elasticity/cpp/Elasticity.h: In constructor 'ElasticityLinearForm::ElasticityLinearForm(std::tr1::shared_ptr<const dolfin::FunctionSpace>, dolfin::Function&)':
> demo/pde/elasticity/cpp/Elasticity.h:15678: error: no match for 'operator=' in '((ElasticityLinearForm*)this)->ElasticityLinearForm::<anonymous>.dolfin::Form::_ufc_form = (((UFC_ElasticityLinearForm*)operator new(4u)), (<anonymous>->UFC_ElasticityLinearForm::UFC_ElasticityLinearForm(), <anonymous>))'
> /usr/include/c++/4.0.0/tr1/boost_shared_ptr.h:474: note: candidates are: std::tr1::shared_ptr<const ufc::form>& std::tr1::shared_ptr<const ufc::form>::operator=(const std::tr1::shared_ptr<const ufc::form>&)
> scons: *** [demo/pde/elasticity/cpp/main.o] Error 1
> scons: building terminated because of errors.

Looks like a mismatch between FFC version and DOLFIN version. There
have been a number of changes in the code generation and the interface
lately. Are you sure you have the latest hg version of both FFC and
DOLFIN?

-- 
Anders



> My configuration reads as follows:
> 
> scons: Reading SConscript files ...
> Using options from scons/options.cache
> Checking for pkg-config... yes
> Checking for numpy-1... yes
> Checking for python-2... yes
> Checking for scotch... no (pkg-config file not found)
>  Trying to generate pkg-config file for scotch... failed
> Checking for trilinos... no (pkg-config file not found)
>  Trying to generate pkg-config file for trilinos... failed
> Checking for ufc-1... yes
> Checking for umfpack... yes
> Checking for mtl4... no (pkg-config file not found)
>  Trying to generate pkg-config file for mtl4... failed
> Checking for petsc... no (pkg-config file not found)
>  Trying to generate pkg-config file for petsc... failed
> Checking for gts... yes
> Checking for boost... yes
> Checking for parmetis... no (pkg-config file not found)
>  Trying to generate pkg-config file for parmetis... failed
> Checking for slepc... no (pkg-config file not found)
>  Trying to generate pkg-config file for slepc... failed
> Checking for libxml-2.0... yes
> Resolving compiler... done
> Found optional package: umfpack
> Found optional package: gts
> Unable to find optional package: petsc
> Unable to find optional package: slepc
> Unable to find optional package: scotch
> Unable to find optional package: trilinos
> Unable to find optional package: cholmod
> Unable to find optional package: mtl4
> Unable to find optional package: parmetis
> Unable to find optional package: gmp
> Disabling compilation of PyDOLFIN
> scons: done reading SConscript files.
> 
> Thank you,
> Alessio
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev at fenics.org
> http://www.fenics.org/mailman/listinfo/dolfin-dev