Hello All,
 
    I'm guessing I need a new GCC?
 
gcc -v
Reading specs from /usr/lib/gcc-lib/sparc-redhat-linux/egcs-2.91.66/specs
gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
[root@sparcy turck-mmcache-2.3.9]# ./configure --enable-mmcache=shared
loading cache ./config.cache
checking for gcc... (cached) gcc
checking whether the C compiler (gcc  ) works... yes
checking whether the C compiler (gcc  ) is a cross-compiler... no
checking whether we are using GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking whether gcc and cc understand -c and -o together... (cached) yes
checking if compiler supports -R... (cached) no
checking if compiler supports -Wl,-rpath,... (cached) yes
checking for PHP prefix... /usr/local
checking for PHP includes... -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/Zend -I/usr/local/include/php/TSRM
checking for PHP extension directory... /usr/local/lib/php/extensions/no-debug-non-zts-20020429
checking how to run the C preprocessor... (cached) gcc -E
checking whether to enable mmcache support... yes, shared
checking host system type... sparc64-unknown-linux-gnu
checking build system type... sparc64-unknown-linux-gnu
checking for ranlib... (cached) ranlib
checking for ld used by GCC... (cached) /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... (cached) yes
checking for BSD-compatible nm... (cached) /usr/bin/nm -B
checking whether ln -s works... (cached) yes
checking for object suffix... o
checking for executable suffix... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.lo... yes
checking if gcc supports -fno-rtti -fno-exceptions ... yes
checking if gcc static flag -static works... -static
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the linker (/usr/bin/ld) supports shared libraries... yes
checking command to parse /usr/bin/nm -B output... ok
checking how to hardcode library paths into programs... immediate
checking for /usr/bin/ld option to reload object files... -r
checking dynamic linker characteristics... Linux ld.so
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for objdir... .libs
creating libtool
loading cache ./config.cache
checking for gawk... (cached) gawk
checking for working mkdir -p... (cached) yes
creating ./config.status
creating config.h
config.h is unchanged
[root@sparcy turck-mmcache-2.3.9]# make
/bin/sh /root/turck-mmcache-2.3.9/libtool --mode=compile gcc  -I. -I/root/turck-mmcache-2.3.9 -DPHP_ATOM_INC -I/root/turck-mmcache-2.3.9/include -I/root/turck-mmcache-2.3.9/main -I/root/turck-mmcache-2.3.9 -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/Zend -I/usr/local/include/php/TSRM -I/usr/local/include  -DHAVE_CONFIG_H    -prefer-pic -c /root/turck-mmcache-2.3.9/mmcache.c -o mmcache.lo
gcc -I. -I/root/turck-mmcache-2.3.9 -DPHP_ATOM_INC -I/root/turck-mmcache-2.3.9/include -I/root/turck-mmcache-2.3.9/main -I/root/turck-mmcache-2.3.9 -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/Zend -I/usr/local/include/php/TSRM -I/usr/local/include -DHAVE_CONFIG_H -prefer-pic -c /root/turck-mmcache-2.3.9/mmcache.c  -fPIC -DPIC -o mmcache.lo
gcc: unrecognized option `-prefer-pic'
/root/turck-mmcache-2.3.9/mmcache.c:1012: parse error before `restore_hash2'
/root/turck-mmcache-2.3.9/mmcache.c:1012: parse error before `sizeof'
/root/turck-mmcache-2.3.9/mmcache.c:1012: parse error before `)'
/root/turck-mmcache-2.3.9/mmcache.c:1016: warning: initialization from incompatible pointer type
/root/turck-mmcache-2.3.9/mmcache.c:1016: initializer element is not constant
/root/turck-mmcache-2.3.9/mmcache.c:1016: warning: data definition has no type or storage class
/root/turck-mmcache-2.3.9/mmcache.c:1017: parse error before `*'
/root/turck-mmcache-2.3.9/mmcache.c:1018: parse error before `*'
/root/turck-mmcache-2.3.9/mmcache.c:1018: conflicting types for `restore_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1003: previous declaration of `restore_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1018: warning: data definition has no type or storage class
/root/turck-mmcache-2.3.9/mmcache.c:1096: conflicting types for `restore_hash2'
/root/turck-mmcache-2.3.9/mmcache.c:1012: previous declaration of `restore_hash2'
/root/turck-mmcache-2.3.9/mmcache.c:1109: conflicting types for `restore_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1018: previous declaration of `restore_zval'
/root/turck-mmcache-2.3.9/mmcache.c: In function `restore_zval':
/root/turck-mmcache-2.3.9/mmcache.c:1127: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1127: parse error before `;'
/root/turck-mmcache-2.3.9/mmcache.c:1136: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1136: parse error before `;'
/root/turck-mmcache-2.3.9/mmcache.c: In function `restore_op_array':
/root/turck-mmcache-2.3.9/mmcache.c:1249: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1249: parse error before `;'
/root/turck-mmcache-2.3.9/mmcache.c: In function `restore_class_entry':
/root/turck-mmcache-2.3.9/mmcache.c:1354: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c: At top level:
/root/turck-mmcache-2.3.9/mmcache.c:1602: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1605: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1608: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c: In function `calc_hash_int':
/root/turck-mmcache-2.3.9/mmcache.c:1611: storage class specified for parameter `calc_zval_ptr'
/root/turck-mmcache-2.3.9/mmcache.c:1611: parse error before `{'
/root/turck-mmcache-2.3.9/mmcache.c:1611: declaration for parameter `calc_zval_ptr' but no such parameter
/root/turck-mmcache-2.3.9/mmcache.c: At top level:
/root/turck-mmcache-2.3.9/mmcache.c:1615: parse error before `else'
/root/turck-mmcache-2.3.9/mmcache.c:1618: parse error before `*'
/root/turck-mmcache-2.3.9/mmcache.c:1618: conflicting types for `calc_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1593: previous declaration of `calc_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1618: warning: data definition has no type or storage class
/root/turck-mmcache-2.3.9/mmcache.c:1633: conflicting types for `calc_hash_int'
/root/turck-mmcache-2.3.9/mmcache.c:1611: previous declaration of `calc_hash_int'
/root/turck-mmcache-2.3.9/mmcache.c:1652: conflicting types for `calc_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1618: previous declaration of `calc_zval'
/root/turck-mmcache-2.3.9/mmcache.c: In function `calc_zval':
/root/turck-mmcache-2.3.9/mmcache.c:1669: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1677: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c: In function `calc_op_array':
/root/turck-mmcache-2.3.9/mmcache.c:1744: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c: In function `calc_class_entry':
/root/turck-mmcache-2.3.9/mmcache.c:1794: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1796: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c: At top level:
/root/turck-mmcache-2.3.9/mmcache.c:1952: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1955: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:1958: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c: In function `store_hash_int':
/root/turck-mmcache-2.3.9/mmcache.c:1960: storage class specified for parameter `store_zval_ptr'
/root/turck-mmcache-2.3.9/mmcache.c:1960: parse error before `{'
/root/turck-mmcache-2.3.9/mmcache.c:1960: declaration for parameter `store_zval_ptr' but no such parameter
/root/turck-mmcache-2.3.9/mmcache.c:1966: invalid type argument of `unary *'
/root/turck-mmcache-2.3.9/mmcache.c: At top level:
/root/turck-mmcache-2.3.9/mmcache.c:1968: parse error before `else'
/root/turck-mmcache-2.3.9/mmcache.c:1970: warning: initialization from incompatible pointer type
/root/turck-mmcache-2.3.9/mmcache.c:1970: initializer element is not constant
/root/turck-mmcache-2.3.9/mmcache.c:1970: warning: data definition has no type or storage class
/root/turck-mmcache-2.3.9/mmcache.c:1971: parse error before `*'
/root/turck-mmcache-2.3.9/mmcache.c:1972: parse error before `*'
/root/turck-mmcache-2.3.9/mmcache.c:1972: conflicting types for `store_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1943: previous declaration of `store_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1972: warning: data definition has no type or storage class
/root/turck-mmcache-2.3.9/mmcache.c:1993: conflicting types for `store_hash_int'
/root/turck-mmcache-2.3.9/mmcache.c:1960: previous declaration of `store_hash_int'
/root/turck-mmcache-2.3.9/mmcache.c:2056: conflicting types for `store_zval'
/root/turck-mmcache-2.3.9/mmcache.c:1972: previous declaration of `store_zval'
/root/turck-mmcache-2.3.9/mmcache.c: In function `store_zval':
/root/turck-mmcache-2.3.9/mmcache.c:2077: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:2088: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c: In function `store_op_array':
/root/turck-mmcache-2.3.9/mmcache.c:2217: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c: In function `store_class_entry':
/root/turck-mmcache-2.3.9/mmcache.c:2296: stray '\' in program
/root/turck-mmcache-2.3.9/mmcache.c:2298: stray '\' in program
make: *** [mmcache.lo] Error 1
[root@sparcy turck-mmcache-2.3.9]#