Bob Rose wrote:
> gcc -c -I../../os/mpeix -I../../include -DMPE
> -D_POSIX_SOURCE -D_SOCKET_SOURCE -DNO_DBM_REWRITEMAP
> -DUSE_HSREGEX -DUSE_EXPAT -I../../lib/expat-lite `../../apaci`
> -DSHARED_MODULE mod_example.c && mv mod_example.o mod_example.lo
> mod_example.lo? y
> ld -b -a archive -o mod_example.so mod_example.lo ld: unknown file extension: ./mod_example.lo
> make[4]: *** [mod_example.so] Error 1
> make[3]: *** [all] Error 1
> make[2]: *** [subdirs] Error 1
> make[2]: Leaving directory `/APACHEFW/PUB/src/apache_1.3.12_mpe/src'
> make[1]: *** [build-std] Error 2
> make[1]: Leaving directory `/APACHEFW/PUB/src/apache_1.3.12_mpe'
> make: *** [build] Error 2
>
> Not sure where this mod_example.lo is coming from. Anyone else seen it?
The .lo appears to be a new naming standard for object files that some
opensource packages such as Apache and PHP are moving to.
Unfortunately, the /etc/ld.ccg script used by POSIX apps to invoke :LINKEDIT
rigidly enforces the .o naming convention instead of just believing the
parameters it is passed. You need to edit /etc/ld.ccg and comment out the part
the enforces the .o naming convention.
Efforts are underway to come up with a better ld script.
- Mark B.