Hi,

I am trying to compile a 64-build of the latest dovecot v2.2.19 on my SuSE 
Linux Enterprise Server 10 (x64) system.

I've run ./configure with two parameters, the --prefix one and the 
--with-ssldir one.
During the make stage, I am getting the following 'internal compiler error' 
message :

---------------------------------------------
[...]
gcc -DHAVE_CONFIG_H -I. -I../..  -I../../src/lib-test   -std=gnu99 -g -O2 -Wall 
-W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith 
-Wchar-subscripts -Wformat=2 -Wbad-function-cast -fno-builtin-strftime 
-Wstrict-aliasing=2    -MT test_lib-test-timing.o -MD -MP -MF 
.deps/test_lib-test-timing.Tpo -c -o test_lib-test-timing.o `test -f 
'test-timing.c' || echo './'`test-timing.c 
test-timing.c: In function ‘test_timing’: 
test-timing.c:48: internal compiler error: Segmentation fault 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See <URL:http://bugs.opensuse.org> for instructions. 
make[4]: *** [test_lib-test-timing.o] Error 1 
----------------------------------------------

The lines that seem to be causing the problem are the following ( from 
src/lib/test-timing.c ) :

45:     void test_timing(void) 
46:     { 
47:     static int64_t test_input1[] = { 

48:             20, 19, 18, 1, 2, 3, 4, 5, 6, 7, 8, 
49:             9, 10, 11, 12, 13, 14, 15, 16, 17, -1 
50:     }; 


This is the first time that any version of dovecot (the v2.2 branch) couldn't 
compile on my system, and I've literally compiled every single release up to 
now. My gcc version is a very old one (4.1.2) :

----------------------------------------------
Using built-in specs. 
Target: x86_64-suse-linux 
Configured with: ../configure --enable-threads=posix --prefix=/usr 
--with-local-prefix=/usr/local --infodir=/usr/share/info 
--mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 
--enable-languages=c,c++,objc,fortran,obj-c++,java,ada 
--enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.1.2 
--enable-ssp --disable-libssp --disable-libgcj --with-slibdir=/lib64 
--with-system-zlib --enable-shared --enable-__cxa_atexit 
--enable-libstdcxx-allocator=new --program-suffix= 
--enable-version-specific-runtime-libs --without-system-libunwind 
--with-cpu=generic --host=x86_64-suse-linux 
Thread model: posix 
gcc version 4.1.2 20070115 (prerelease) (SUSE Linux) 
-----------------------------------------------

Don't know whether this helps, but I've noticed that if I change the int64_t to 
uint64_t in the following lines of the same file :

61:      static int64_t *test_inputs[] = { 
62:              test_input1, test_input2, test_input3 
63:      }; 


..then compilation finishes without errors, but I'm not certain what the 
practical consequences of this action might be. 

Can somebody help me please ? 

Thank you for your time.

Reply via email to