Hello all, i have been trying to get started with libMesh since a few weeks. Everything ran very well until i enabled the complex option. i downloaded latest version of libMesh code via svn, and compiled petsc-3.0.0-p3 by using following configuration -------------------------------------------------------------- $./config/configure.py --with-cc=gcc \ --with-fc=gfortran \ --with-cxx=g++ \ --with-mpi-compilers=0 \ --with-shared=1 \ --with-debugging=1 \ --download-mpich=1 \ --download-f-blas-lapack=1 \ --with-scalar-type=complex $make all test --------------------------------------------------------------
everything seemed to work, so i carried on configuring libmesh ------------------------------------------------------------------------- $CXX=g++ CC=gcc F77=gfortran ./configure --enable-complex --enable-ifem $make ------------------------------------------------------------------------- during the compilation, it pops up the error message ------------------------------------------------------------------------- Compiling C++ (in optimized mode) src/base/libmesh.C... In file included from /home/ping/programs/petsc-3.0.0-p3/include/petsc.h:353, from /home/ping/programs/libmesh/include/numerics/petsc_macro.h:83, from src/base/libmesh.C:38: /home/ping/programs/petsc-3.0.0-p3/include/petscmath.h:92: error: expected initializer before ‘PetscScalar’ /home/ping/programs/petsc-3.0.0-p3/include/petscmath.h:181: error: ‘PetscScalar’ does not name a type ... ‘PetscScalar’ is undefined and so on (reasonable) ... ------------------------------------------------------------------------- i traced back to the 'petscmath.h', line 92 is simply a typedef form 'double complex' to ‘PetscScalar’, and also the comments tells that the c compiler must support c90. So i checked the output of libMesh configure. well the problem has been already stated: "checking for gcc option to accept ISO C89... none needed". I read the GNU compiler document, it says that the gcc default standard sould be c90. since there is possibility they have already updated to c99, i also tried to append CFALGS='ansi' (so as std=c89, std=iso9899:1990) while configuring libMesh. The configure reported either "checking for gcc option to accept ISO C89... unsppored" or "checking whether we are using the GNU C compiler... no", and compilation stops at the same spot. i am running gcc 4.3.2 under kubuntu 8.10. am i using the wrong compiler or just didn't configure it right? would be really appreciated if someone can drop me a hint!! best regards Ping Rong -- Mit freundlichen Grüßen M.Sc. Ping Rong Technische Universität Hamburg-Harburg Institut für Modellierung und Berechnung Denickestraße 17 21073 Hamburg DE 17 Raum 3031 Tel.: ++49 - (0)40 - 42878 2749 Fax: ++49 - (0)40 - 42878 43533 ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ Libmesh-devel mailing list Libmesh-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-devel