ABI issue Solaris 9 8/03?

From: Lars Hecking (lhecking@nmrc.ucc.ie)
Date: Mon Nov 24 2003 - 10:20:12 EST


 I'm facing a strange problem on a Solaris 9 8/03 box, patched with the
 18/11/2003 recommended and security patch cluster.

 Solaris 9 8/03 SPARC
 gcc 2.95.3
 Solaris /usr/ccs/bin compiler tools
 apache 1.3.29/mod_ssl-2.8.16-1.3.29/openssl-0.9.7c/mm-1.3.0

 I am using the same build procedure and sources as on Solaris 8 machines,
 and I'm building from source, no binary packages. gcc was built from source,
 too, on the same box.

 All works fine under Solaris 8 (same machine, same sources), but not Solaris 9:

# ./apachectl configtest
Syntax error on line 205 of /usr/local/apache/conf/httpd.conf:
Cannot load /usr/local/apache/libexec/mod_mime_magic.so into server: ld.so.1: /usr/local/apache/bin/httpd: fatal: relocation error: file /usr/local/apache/libexec/mod_mime_magic.so: symbol ap_pcalloc: referenced symbol not found

 Someone on the apache developer list tried it on another Solaris 9 machine,
 using the same compiler, but older OS release:

                       Solaris 9 12/02 s9s_u2wos_10a SPARC
           Copyright 2002 Sun Microsystems, Inc. All Rights Reserved.
                        Use is subject to license terms.
                           Assembled 02 December 2002

 and it works fine for him.

 Here is the relevant part of truss output for my system,

resolvepath("/usr/local/apache/libexec/mod_mime_magic.so", "/usr/local/apache/libexec/mod_mime_magic.so", 1023) = 43
memcntl(0xFF120000, 3664, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(4) = 0
mmap(0x00000000, 8192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFF110000
munmap(0xFF132000, 9020) = 0
munmap(0xFF120000, 15784) = 0
munmap(0xFF140000, 8192) = 0
fstat64(2, 0xFFBFEC58) = 0
write(2, " S y n t a x e r r o r".., 21) = 21
write(2, " 2 0 5", 3) = 3
write(2, " o f ", 4) = 4

 and here for his system

resolvepath("/tmp/apache/libexec/mod_mime_magic.so", "/tmp/apache/libexec/mod_mime_magic.so", 1023) = 37
memcntl(0xFF120000, 3652, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
close(4) = 0
munmap(0xFF250000, 8192) = 0
open("/tmp/apache/libexec/mod_speling.so", O_RDONLY) = 4
fstat(4, 0xFFBFD1EC) = 0

 Here is another difference (@@SYSVABI_1.3 stuff):

 On my system:

> $ nm /usr/local/apache/bin/httpd | grep alloc
>
> [403] | 0| 0|FILE |LOCL |0 |ABS |alloc.c
> [406] | 518516| 4|OBJT |LOCL |0 |13 |alloc_mutex
> [1675] | 156472| 8|FUNC |GLOB |0 |10 |ap_cleanup_alloc
> [1332] | 156420| 52|FUNC |GLOB |0 |10 |ap_init_alloc
> [1118] | 156772| 120|FUNC |GLOB |0 |10 |ap_palloc
> [1401] | 156892| 40|FUNC |GLOB |0 |10 |ap_pcalloc
> [1495] | 545572| 128|FUNC |GLOB |0 |UNDEF |calloc@@SYSVABI_1.3
> [1562] | 545728| 60|FUNC |GLOB |0 |UNDEF |malloc@@SYSVABI_1.3
> [408] | 155944| 84|FUNC |LOCL |0 |10 |malloc_block
> [1556] | 545704| 992|FUNC |GLOB |0 |UNDEF |realloc@@SYSVABI_1.3

 On his:

> $ nm /tmp/apache/bin/httpd | grep alloc
> [397] | 0| 0|FILE |LOCL |0 |ABS |alloc.c
> [402] | 540840| 4|OBJT |LOCL |0 |16 |alloc_mutex
> [1487] | 176780| 8|FUNC |GLOB |0 |9 |ap_cleanup_alloc
> [1296] | 176728| 52|FUNC |GLOB |0 |9 |ap_init_alloc
> [1137] | 177080| 120|FUNC |GLOB |0 |9 |ap_palloc
> [1236] | 177200| 40|FUNC |GLOB |0 |9 |ap_pcalloc
> [1149] | 538188| 0|FUNC |GLOB |0 |UNDEF |calloc
> [1556] | 536940| 0|FUNC |GLOB |0 |UNDEF |malloc
> [417] | 176252| 84|FUNC |LOCL |0 |9 |malloc_block
> [1181] | 538164| 0|FUNC |GLOB |0 |UNDEF |realloc

 Any ideas?
_______________________________________________
sunmanagers mailing list
sunmanagers@sunmanagers.org
http://www.sunmanagers.org/mailman/listinfo/sunmanagers



This archive was generated by hypermail 2.1.7 : Wed Apr 09 2008 - 23:27:33 EDT