Re: [xml] problem building libxml2 for HPUX



On Fri, 22 Feb 2002 01:31, you wrote:
Peter,

The install problem I have is that /usr/bin/install does not exist on
my HPUX system, and I don't know what it does, so I don't know how
to work around the issue.

install is a standard unix utility for installing files . It comes in 2 major 
flavours: SysV & BSD which have quite different command line options. Quite 
often OS packages include a shell script that mimic the BSD version as it is 
more flexible & usable. In fact libxslt  src comes with the install-sh script 
in its top level dir . The Makefile generated by configure SHOULD have a line 
defining the INSTALL macro thus :
INSTALL = ./install-sh -c
but your configure process set it to a nonexistent command.

Update that  line in the Makefile and it should install quite happily.
( HPUX's install utility is in /usr/sbin/install  - see the man page for 
details. )
Why the autoconf system setup the makefile to use /usr/bin/install I'm not 
sure. What options did you use with configure ?
When you ran configure it should have reported something like the following :

checking for a BSD compatible install... /local/src/libxml/2.4.12/install-sh 
-c


I would much rather have /opt hierarchy than /usr/local, if you can
tell me how to change this.


Thats easy 8-) .
If you want to install in a hierarchy based at /opt ( /opt/bin, /opt/lib, 
/opt/man etc ) i.e. mimic the standard installation but rooted at /opt use :
configure --prefix=/opt
or (more likely) you want to use /opt in the standard HPUX style (each app 
has its own hierarchy) use :
configure --prefix=/opt/libxml

REMEMBER that if you rerun configure you will probably have to fix up the 
regnerated Makefile if it still select sthe wrong install command.

Also I recommend that you run configure --help to see all the options 
available to configure.

I also found that nanoftp and nanohttp use the constant SOCKLEN_T,
which on HPUX is defined as socklen_t.  Once I changed this to lower
case I was able to get those files to compile.

I have a proper fix for this issue (not submitted to Daniel Veillard yet) :
The configure.in file (used to generate configure with automake) need to set 
the HPUX compile environment correctly . Heres the diff for  configure.in

178a179,181
          *-*-hpux10 | *-*-hpux11 )
               CFLAGS="${CFLAGS} -D_XOPEN_SOURCE_EXTENDED"
               ;;

If you have automake you can rebuild configure.
If not look for this part of  configure :

if test "${GCC}" != "yes" ; then
    case "${host}" in
          *-*-hpux* )
               CFLAGS="${CFLAGS} -Wp,-H30000"
               ;;
          *-dec-osf* )
               CFLAGS="${CFLAGS} -ieee"
               ;;
    esac
else
    CFLAGS="${CFLAGS} -Wall"
    case "${host}" in
          alpha*-*-linux* )
               CFLAGS="${CFLAGS} -mieee"
               ;;
          *-*-hpux10 | *-*-hpux11 )
               CFLAGS="${CFLAGS} -D_XOPEN_SOURCE_EXTENDED"
               ;;
    esac
fi
case ${host} in
    *-*-solaris*)
        XML_LIBDIR="${XML_LIBDIR} -R${libdir}"
        ;;
esac


Note where I've inserted the hpux pattern . There may be  a better place to 
put this but I dont have the HPUX compiler to test whether its a more 
generalised HPUX build issue or not.

On reflection I'll CC this to the mailing list in case this info is of any 
help to other HPUX users ....

regards,

-- 
Peter Farmer            |  Custom XML software   | Internet Engineering 
Zveno Pty Ltd           | Website XML Solutions  | Training & Seminars
http://www.zveno.com/   |   Open Source Tools    |   - XML XSL Tcl
Peter Farmer zveno com  +------------------------+---------------------
Ph. +61 8 92036380      | Mobile +61 417 906 851 | Fax +61 8 92036380



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]