mirror of
				https://github.com/apache/httpd.git
				synced 2025-11-03 17:53:20 +03:00 
			
		
		
		
	browsing with SSIs but more easily posted on USENET. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83378 13f79535-47bb-0310-9956-ffa450edef68
		
			
				
	
	
		
			274 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			274 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<!--#if expr="$FAQMASTER" -->
 | 
						|
 <!--#set var="STANDALONE" value="" -->
 | 
						|
 <!--#set var="INCLUDED" value="YES" -->
 | 
						|
 <!--#if expr="$QUERY_STRING = TOC" -->
 | 
						|
  <!--#set var="TOC" value="YES" -->
 | 
						|
  <!--#set var="CONTENT" value="" -->
 | 
						|
 <!--#else -->
 | 
						|
  <!--#set var="TOC" value="" -->
 | 
						|
  <!--#set var="CONTENT" value="YES" -->
 | 
						|
 <!--#endif -->
 | 
						|
<!--#else -->
 | 
						|
 <!--#set var="STANDALONE" value="YES" -->
 | 
						|
 <!--#set var="INCLUDED" value="" -->
 | 
						|
 <!--#set var="TOC" value="" -->
 | 
						|
 <!--#set var="CONTENT" value="" -->
 | 
						|
<!--#endif -->
 | 
						|
<!--#if expr="$STANDALONE" -->
 | 
						|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
 | 
						|
<HTML>
 | 
						|
 <HEAD>
 | 
						|
  <TITLE>Apache Server Frequently Asked Questions</TITLE>
 | 
						|
 </HEAD>
 | 
						|
<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
 | 
						|
 <BODY
 | 
						|
  BGCOLOR="#FFFFFF"
 | 
						|
  TEXT="#000000"
 | 
						|
  LINK="#0000FF"
 | 
						|
  VLINK="#000080"
 | 
						|
  ALINK="#FF0000"
 | 
						|
 >
 | 
						|
  <!--#include virtual="header.html" -->
 | 
						|
  <H1 ALIGN="CENTER">Apache Server Frequently Asked Questions</H1>
 | 
						|
  <P>
 | 
						|
  $Revision: 1.1 $ ($Date: 1999/06/24 15:02:51 $)
 | 
						|
  </P>
 | 
						|
  <P>
 | 
						|
  The latest version of this FAQ is always available from the main
 | 
						|
  Apache web site, at
 | 
						|
  <<A
 | 
						|
       HREF="http://www.apache.org/docs/misc/FAQ.html"
 | 
						|
       REL="Help"
 | 
						|
      ><SAMP>http://www.apache.org/docs/misc/FAQ.html</SAMP></A>>.
 | 
						|
  </P>
 | 
						|
<!-- Notes about changes:                                           -->
 | 
						|
<!--  - If adding a relative link to another part of the            -->
 | 
						|
<!--    documentation, *do* include the ".html" portion.  There's a -->
 | 
						|
<!--    good chance that the user will be reading the documentation -->
 | 
						|
<!--    on his own system, which may not be configured for          -->
 | 
						|
<!--    multiviews.                                                 -->
 | 
						|
<!--  - When adding items, make sure they're put in the right place -->
 | 
						|
<!--    - verify that the numbering matches up.                     -->
 | 
						|
<!--  - *Don't* use <PRE></PRE> blocks - they don't appear          -->
 | 
						|
<!--    correctly in a reliable way when this is converted to text  -->
 | 
						|
<!--    with Lynx.  Use <DL><DD><CODE>xxx<BR>xx</CODE></DD></DL>    -->
 | 
						|
<!--    blocks inside a <P></P> instead.  This is necessary to get  -->
 | 
						|
<!--    the horizontal and vertical indenting right.                -->
 | 
						|
<!--  - Don't forget to include an HR tag after the last /P tag     -->
 | 
						|
<!--    but before the /LI in an item.                              -->
 | 
						|
  <P>
 | 
						|
  If you are reading a text-only version of this FAQ, you may find numbers
 | 
						|
  enclosed in brackets (such as "[12]").  These refer to the list of
 | 
						|
  reference URLs to be found at the end of the document.  These references
 | 
						|
  do not appear, and are not needed, for the hypertext version.
 | 
						|
  </P>
 | 
						|
  <H2>The Questions</H2>
 | 
						|
<OL TYPE="A">
 | 
						|
<!--#endif -->
 | 
						|
<!--#if expr="$TOC || $STANDALONE" -->
 | 
						|
 <LI VALUE="3"><STRONG>Building Apache</STRONG>
 | 
						|
  <OL>
 | 
						|
   <LI><A HREF="#bind8.1">Why do I get an error about an undefined
 | 
						|
        reference to "<SAMP>__inet_ntoa</SAMP>" or other
 | 
						|
        <SAMP>__inet_*</SAMP> symbols?</A>
 | 
						|
   </LI>
 | 
						|
   <LI><A HREF="#cantbuild">Why won't Apache compile with my
 | 
						|
        system's <SAMP>cc</SAMP>?</A>
 | 
						|
   </LI>
 | 
						|
   <LI><A HREF="#linuxiovec">Why do I get complaints about redefinition
 | 
						|
        of "<CODE>struct iovec</CODE>" when compiling under Linux?</A>
 | 
						|
   </LI>
 | 
						|
   <LI><A HREF="#broken-gcc">I'm using gcc and I get some compilation errors, 
 | 
						|
	what is wrong?</A>
 | 
						|
   </LI>
 | 
						|
   <LI><A HREF="#glibc-crypt">I'm using RedHat Linux 5.0, or some other
 | 
						|
        <SAMP>glibc</SAMP>-based Linux system, and I get errors with the
 | 
						|
        <CODE>crypt</CODE> function when I attempt to build Apache 1.2.</A>
 | 
						|
   </LI>
 | 
						|
  </OL>
 | 
						|
 </LI>
 | 
						|
<!--#endif -->
 | 
						|
<!--#if expr="$STANDALONE" -->
 | 
						|
</OL>
 | 
						|
 | 
						|
<HR>
 | 
						|
 | 
						|
  <H2>The Answers</H2>
 | 
						|
<!--#endif -->
 | 
						|
<!--#if expr="! $TOC" -->
 | 
						|
 | 
						|
  <H3>C. Building Apache</H3>
 | 
						|
<OL>
 | 
						|
 | 
						|
 <LI><A NAME="bind8.1">
 | 
						|
      <STRONG>Why do I get an error about an undefined reference to
 | 
						|
      "<SAMP>__inet_ntoa</SAMP>" or other
 | 
						|
      <SAMP>__inet_*</SAMP> symbols?</STRONG>
 | 
						|
     </A>
 | 
						|
  <P>
 | 
						|
  If you have installed <A HREF="http://www.isc.org/bind.html">BIND-8</A>
 | 
						|
  then this is normally due to a conflict between your include files
 | 
						|
  and your libraries.  BIND-8 installs its include files and libraries
 | 
						|
  <CODE>/usr/local/include/</CODE> and <CODE>/usr/local/lib/</CODE>, while
 | 
						|
  the resolver that comes with your system is probably installed in
 | 
						|
  <CODE>/usr/include/</CODE> and <CODE>/usr/lib/</CODE>.  If
 | 
						|
  your system uses the header files in <CODE>/usr/local/include/</CODE>
 | 
						|
  before those in <CODE>/usr/include/</CODE> but you do not use the new
 | 
						|
  resolver library, then the two versions will conflict.
 | 
						|
  </P>
 | 
						|
  <P>
 | 
						|
  To resolve this, you can either make sure you use the include files
 | 
						|
  and libraries that came with your system or make sure to use the
 | 
						|
  new include files and libraries.  Adding <CODE>-lbind</CODE> to the
 | 
						|
  <CODE>EXTRA_LDFLAGS</CODE> line in your <SAMP>Configuration</SAMP>
 | 
						|
  file, then re-running <SAMP>Configure</SAMP>, should resolve the
 | 
						|
  problem.  (Apache versions 1.2.* and earlier use
 | 
						|
  <CODE>EXTRA_LFLAGS</CODE> instead.)
 | 
						|
  </P>
 | 
						|
  <P>
 | 
						|
  <STRONG>Note:</STRONG>As of BIND 8.1.1, the bind libraries and files are
 | 
						|
  installed under <SAMP>/usr/local/bind</SAMP> by default, so you
 | 
						|
  should not run into this problem.  Should you want to use the bind
 | 
						|
  resolvers you'll have to add the following to the respective lines:
 | 
						|
  </P>
 | 
						|
  <P>
 | 
						|
  <DL>
 | 
						|
   <DD><CODE>EXTRA_CFLAGS=-I/usr/local/bind/include
 | 
						|
    <BR>
 | 
						|
    EXTRA_LDFLAGS=-L/usr/local/bind/lib
 | 
						|
    <BR>
 | 
						|
    EXTRA_LIBS=-lbind</CODE>
 | 
						|
   </DD>
 | 
						|
  </DL>
 | 
						|
  <P></P>
 | 
						|
  <HR>
 | 
						|
 </LI>
 | 
						|
 | 
						|
 <LI><A NAME="cantbuild">
 | 
						|
      <STRONG>Why won't Apache compile with my system's
 | 
						|
      <SAMP>cc</SAMP>?</STRONG>
 | 
						|
     </A>
 | 
						|
  <P>
 | 
						|
  If the server won't compile on your system, it is probably due to one
 | 
						|
  of the following causes:
 | 
						|
  </P>
 | 
						|
  <UL>
 | 
						|
   <LI><STRONG>The <SAMP>Configure</SAMP> script doesn't recognize your system
 | 
						|
    environment.</STRONG>
 | 
						|
    <BR>
 | 
						|
    This might be either because it's completely unknown or because
 | 
						|
    the specific environment (include files, OS version, <EM>et
 | 
						|
    cetera</EM>) isn't explicitly handled.  If this happens, you may
 | 
						|
    need to port the server to your OS yourself.
 | 
						|
   </LI>
 | 
						|
   <LI><STRONG>Your system's C compiler is garbage.</STRONG>
 | 
						|
    <BR>
 | 
						|
    Some operating systems include a default C compiler that is either
 | 
						|
    not ANSI C-compliant or suffers from other deficiencies.  The usual
 | 
						|
    recommendation in cases like this is to acquire, install, and use
 | 
						|
    <SAMP>gcc</SAMP>.
 | 
						|
   </LI>
 | 
						|
   <LI><STRONG>Your <SAMP>include</SAMP> files may be confused.</STRONG>
 | 
						|
    <BR>
 | 
						|
    In some cases, we have found that a compiler installation or system
 | 
						|
    upgrade has left the C header files in an inconsistent state.  Make
 | 
						|
    sure that your include directory tree is in sync with the compiler and
 | 
						|
    the operating system.
 | 
						|
   </LI>
 | 
						|
   <LI><STRONG>Your operating system or compiler may be out of
 | 
						|
    revision.</STRONG>
 | 
						|
    <BR>
 | 
						|
    Software vendors (including those that develop operating systems)
 | 
						|
    issue new releases for a reason; sometimes to add functionality, but
 | 
						|
    more often to fix bugs that have been discovered.  Try upgrading
 | 
						|
    your compiler and/or your operating system.
 | 
						|
   </LI>
 | 
						|
  </UL>
 | 
						|
  <P>
 | 
						|
  The Apache Group tests the ability to build the server on many
 | 
						|
  different platforms.  Unfortunately, we can't test all of the OS
 | 
						|
  platforms there are.  If you have verified that none of the above
 | 
						|
  issues is the cause of your problem, and it hasn't been reported
 | 
						|
  before, please submit a
 | 
						|
  <A HREF="http://www.apache.org/bug_report.html">problem report</A>.
 | 
						|
  Be sure to include <EM>complete</EM> details, such as the compiler
 | 
						|
  & OS versions and exact error messages.
 | 
						|
  </P>
 | 
						|
  <HR>
 | 
						|
 </LI>
 | 
						|
 | 
						|
 <LI><A NAME="linuxiovec">
 | 
						|
      <STRONG>Why do I get complaints about redefinition
 | 
						|
      of "<CODE>struct iovec</CODE>" when
 | 
						|
      compiling under Linux?</STRONG>
 | 
						|
     </A>
 | 
						|
  <P>
 | 
						|
  This is a conflict between your C library includes and your kernel
 | 
						|
  includes.  You need to make sure that the versions of both are matched
 | 
						|
  properly.  There are two workarounds, either one will solve the problem:
 | 
						|
  </P>
 | 
						|
  <P>
 | 
						|
  <UL>
 | 
						|
   <LI>Remove the definition of <CODE>struct iovec</CODE> from your C
 | 
						|
    library includes.  It is located in <CODE>/usr/include/sys/uio.h</CODE>.
 | 
						|
    <STRONG>Or,</STRONG>
 | 
						|
   </LI>
 | 
						|
   <LI>Add  <CODE>-DNO_WRITEV</CODE> to the <CODE>EXTRA_CFLAGS</CODE>
 | 
						|
    line in your <SAMP>Configuration</SAMP> and reconfigure/rebuild.
 | 
						|
    This hurts performance and should only be used as a last resort.
 | 
						|
   </LI>
 | 
						|
  </UL>
 | 
						|
  <P></P>
 | 
						|
  <HR>
 | 
						|
 </LI>
 | 
						|
 | 
						|
 <LI><A NAME="broken-gcc"><STRONG>I'm using gcc and I get some
 | 
						|
	compilation errors, what is wrong?</STRONG></A>
 | 
						|
    <P>
 | 
						|
    GCC parses your system header files and produces a modified subset which
 | 
						|
    it uses for compiling.  This behaviour ties GCC tightly to the version
 | 
						|
    of your operating system.  So, for example, if you were running IRIX 5.3
 | 
						|
    when you built GCC and then upgrade to IRIX 6.2 later, you will have to
 | 
						|
    rebuild GCC.  Similarly for Solaris 2.4, 2.5, or 2.5.1 when you upgrade
 | 
						|
    to 2.6.  Sometimes you can type "gcc -v" and it will tell you the version
 | 
						|
    of the operating system it was built against.
 | 
						|
    </P>
 | 
						|
    <P>
 | 
						|
    If you fail to do this, then it is very likely that Apache will fail
 | 
						|
    to build.  One of the most common errors is with <CODE>readv</CODE>,
 | 
						|
    <CODE>writev</CODE>, or <CODE>uio.h</CODE>.  This is <STRONG>not</STRONG> a
 | 
						|
    bug with Apache.  You will need to re-install GCC.
 | 
						|
    </P>
 | 
						|
   <HR>
 | 
						|
  </LI>
 | 
						|
 | 
						|
 <LI><A NAME="glibc-crypt">
 | 
						|
      <STRONG>I'm using RedHat Linux 5.0, or some other 
 | 
						|
      <SAMP>glibc</SAMP>-based Linux system, and I get errors with the
 | 
						|
      <CODE>crypt</CODE> function when I attempt to build Apache 1.2.</STRONG>
 | 
						|
     </A>
 | 
						|
 | 
						|
  <P>
 | 
						|
  <SAMP>glibc</SAMP> puts the <CODE>crypt</CODE> function into a separate
 | 
						|
  library.  Edit your <CODE>src/Configuration</CODE> file and set this:
 | 
						|
  </P>
 | 
						|
  <DL>
 | 
						|
   <DD><CODE>EXTRA_LIBS=-lcrypt</CODE>
 | 
						|
   </DD>
 | 
						|
  </DL>
 | 
						|
  <P>
 | 
						|
  Then re-run <SAMP>src/Configure</SAMP> and re-execute the make.
 | 
						|
  </P>
 | 
						|
  <HR>
 | 
						|
 </LI>
 | 
						|
 | 
						|
</OL>
 | 
						|
<!--#endif -->
 | 
						|
<!--#if expr="$STANDALONE" -->
 | 
						|
  <!-- Don't forget to add HR tags at the end of each list item.. -->
 | 
						|
 | 
						|
<!--#include virtual="footer.html" -->
 | 
						|
</BODY>
 | 
						|
</HTML>
 | 
						|
<!--#endif -->
 |