>Number:         5169
>Category:       os-osf
>Synopsis:       apxs does not create DSO properly
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    apache
>State:          open
>Class:          support
>Submitter-Id:   apache
>Arrival-Date:   Tue Oct 19 12:10:01 PDT 1999
>Last-Modified:
>Originator:     [EMAIL PROTECTED]
>Organization:
apache
>Release:        1.3.9
>Environment:
Digital UNIX 4.0D version 878.  gcc 2.95.1, gnu make 3.78.1, and default 
version of sed (unknown version: 'sed -V' generates an error.)
>Description:
When trying to compile a shared module, apxs generates bad commands.  Here
is a sample of the error:

> /usr/local/bin/make APXS=/usr/local/apache/bin/apxs
/usr/local/apache/bin/apxs  -o mod_ip_forwarding.so  -c mod_ip_forwarding.c
gcc -DOSF1 -DUSE_HSREGEX -DUSE_EXPAT -I../lib/expat-lite -fpic -DSHARED_MODULE 
-I/usr/local/apache/include  -c mod_ip_forwarding.c
ld -shared -expect_unresolved * -s -o mod_ip_forwarding.so mod_ip_forwarding.o 
ld:
Object file format error in: Makefile: read_cur_obj_info: bad file magic 
number(0x440a)
apxs:Break: Command failed with rc=65536
make: *** [mod_ip_forwarding.so] Error 1

>How-To-Repeat:
I built and installed apache_1.3.9 and apache-contrib-1.0.7 from ftp.apache.org
on a DEC UNIX machine.  The problem occurs whenever I try to build any of the 
modules in apache-contrib.
>Fix:
It looks like apxs is trying to issue the command 
"ld -shared -expect_unresolved * -s -o mod_ip_forwarding.so 
mod_ip_forwarding.o".
The man page for ld warns that any wildcards following -expect_unresolved should
be shell-escaped.

I was able to fix this by fixing the definition of $CFG_LDFLAGS_SHLIB in apxs.
It should be:
my $CFG_LDFLAGS_SHLIB = '-shared -expect_unresolved \* -s'; # substituted via 
Makefile.tmpl  
instead of:
my $CFG_LDFLAGS_SHLIB = '-shared -expect_unresolved * -s'; # substituted via 
Makefile.tmpl

With this change I was able to build and link everything without troubles.
>Audit-Trail:
>Unformatted:
[In order for any reply to be added to the PR database, you need]
[to include <[EMAIL PROTECTED]> in the Cc line and make sure the]
[subject line starts with the report component and number, with ]
[or without any 'Re:' prefixes (such as "general/1098:" or      ]
["Re: general/1098:").  If the subject doesn't match this       ]
[pattern, your message will be misfiled and ignored.  The       ]
["apbugs" address is not added to the Cc line of messages from  ]
[the database automatically because of the potential for mail   ]
[loops.  If you do not include this Cc, your reply may be ig-   ]
[nored unless you are responding to an explicit request from a  ]
[developer.  Reply only with text; DO NOT SEND ATTACHMENTS!     ]



Reply via email to