Adam,

conffix.h is generated temporarily for this test [based on previous
tests in configure]. After succesful completion of configure - these
workarrounds are dumped into bmake/$PETSC_ARCH/petscfix.h You can run
configure with --doCleanup=0. This option is supporsed to prevent
deleting temporary files.

Also there should be an entry in configure.log for a test for mode_t.
I have the following on my linux box. [if this test fails - configure
adds an entery for mode_t to conffix.h]

Satish

On Sat, 5 Apr 2008, Adam C Powell IV wrote:

> Greetings,
> 
> Due to a change somewhere in the toolchain, PETSc configuration suddenly
> stopped working on Debian unstable.  The error message in configure.log
> is:
> 
> TEST checkSizeof from 
> config.types(/home/hazelsct/petsc-2.3.3/python/BuildSystem/config/types.py:246)
> TESTING: checkSizeof from 
> config.types(/home/hazelsct/petsc-2.3.3/python/BuildSystem/config/types.py:246)
>   Determines the size of type "typeName", and defines SIZEOF_"typeName" to be 
> the size
> Checking for size of type: char
>           Pushing language C
> sh: mpicc -c -o conftest.o  -fPIC -Wall -Wwrite-strings -Wno-long-double 
> -Wno-strict-aliasing -g3  conftest.c 
> Executing: mpicc -c -o conftest.o  -fPIC -Wall -Wwrite-strings 
> -Wno-long-double -Wno-strict-aliasing -g3  conftest.c 
> sh: 
> Possible ERROR while running compiler: ret = 256
> error message = {In file included from conftest.c:4:
> /usr/include/sys/types.h:72: error: conflicting types for ‘mode_t’
> conffix.h:6: error: previous declaration of ‘mode_t’ was here
> /usr/include/sys/types.h:88: error: conflicting types for ‘off_t’
> conffix.h:7: error: previous declaration of ‘off_t’ was here
> In file included from /usr/include/sys/types.h:147,
>                  from conftest.c:4:
> /usr/lib/gcc/x86_64-linux-gnu/4.2.3/include/stddef.h:214: error: conflicting 
> types for ‘size_t’
> conffix.h:4: error: previous declaration of ‘size_t’ was here
> cc1: error: unrecognized command line option "-Wno-long-double"
> }
> Source:
> #include "confdefs.h"
> #include "conffix.h"
> 
> #include <sys/types.h>
> #if STDC_HEADERS
> #include <stdlib.h>
> #include <stdio.h>
> #include <stddef.h>
> #endif
> 
> int main() {
> FILE *f = fopen("conftestval", "w");
> 
> if (!f) exit(1);
> fprintf(f, "%lu\n", (unsigned long)sizeof(char));
> ;
>   return 0;
> }
>                 Compile failed inside link
> 
> *********************************************************************************
>          UNABLE to CONFIGURE with GIVEN OPTIONS    (see configure.log for 
> details):
> ---------------------------------------------------------------------------------------
> Unable to determine sizeof_char
> *********************************************************************************
> 
> Trouble is, I can't find conffix.h anywhere in order to change it.  And
> "grep conffix petsc-2.3.3/python/BuildSystem/*" and */* etc. doesn't
> turn up anything useful.
> 
> How can I investigate further, to try to fix this?
> 
> -Adam
> 

Reply via email to