578 lines
		
	
	
		
			21 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			578 lines
		
	
	
		
			21 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
                                  _   _ ____  _     
 | 
						|
                              ___| | | |  _ \| |    
 | 
						|
                             / __| | | | |_) | |    
 | 
						|
                            | (__| |_| |  _ <| |___ 
 | 
						|
                             \___|\___/|_| \_\_____|
 | 
						|
 | 
						|
                                How To Compile
 | 
						|
 | 
						|
Installing Binary Packages
 | 
						|
==========================
 | 
						|
 | 
						|
   Lots of people download binary distributions of curl and libcurl. This
 | 
						|
   document does not describe how to install curl or libcurl using such a
 | 
						|
   binary package. This document describes how to compile, build and install
 | 
						|
   curl and libcurl from source code.
 | 
						|
 | 
						|
UNIX
 | 
						|
====
 | 
						|
 | 
						|
   A normal unix installation is made in three or four steps (after you've
 | 
						|
   unpacked the source archive):
 | 
						|
 | 
						|
        ./configure
 | 
						|
        make
 | 
						|
        make test (optional)
 | 
						|
        make install
 | 
						|
 | 
						|
   You probably need to be root when doing the last command.
 | 
						|
 | 
						|
   If you have checked out the sources from the CVS repository, read the
 | 
						|
   CVS-INFO on how to proceed.
 | 
						|
 | 
						|
   Get a full listing of all available configure options by invoking it like:
 | 
						|
 | 
						|
        ./configure --help
 | 
						|
 | 
						|
   If you want to install curl in a different file hierarchy than /usr/local,
 | 
						|
   you need to specify that already when running configure:
 | 
						|
 | 
						|
        ./configure --prefix=/path/to/curl/tree
 | 
						|
 | 
						|
   If you happen to have write permission in that directory, you can do 'make
 | 
						|
   install' without being root. An example of this would be to make a local
 | 
						|
   install in your own home directory:
 | 
						|
 | 
						|
        ./configure --prefix=$HOME
 | 
						|
        make
 | 
						|
        make install
 | 
						|
 | 
						|
   The configure script always tries to find a working SSL library unless
 | 
						|
   explicitly told not to. If you have OpenSSL installed in the default search
 | 
						|
   path for your compiler/linker, you don't need to do anything special. If
 | 
						|
   you have OpenSSL installed in /usr/local/ssl, you can run configure like:
 | 
						|
 | 
						|
	./configure --with-ssl
 | 
						|
 | 
						|
   If you have OpenSSL installed somewhere else (for example, /opt/OpenSSL,)
 | 
						|
   you can run configure like this:
 | 
						|
 | 
						|
	./configure --with-ssl=/opt/OpenSSL
 | 
						|
 | 
						|
   If you insist on forcing a build without SSL support, even though you may
 | 
						|
   have OpenSSL installed in your system, you can run configure like this:
 | 
						|
 | 
						|
        ./configure --without-ssl
 | 
						|
 | 
						|
   If you have OpenSSL installed, but with the libraries in one place and the
 | 
						|
   header files somewhere else, you have to set the LDFLAGS and CPPFLAGS
 | 
						|
   environment variables prior to running configure.  Something like this
 | 
						|
   should work:
 | 
						|
 | 
						|
     (with the Bourne shell and its clones):
 | 
						|
 | 
						|
       CPPFLAGS="-I/path/to/ssl/include" LDFLAGS="-L/path/to/ssl/lib" \
 | 
						|
           ./configure
 | 
						|
 | 
						|
     (with csh, tcsh and their clones):
 | 
						|
     
 | 
						|
       env CPPFLAGS="-I/path/to/ssl/include" LDFLAGS="-L/path/to/ssl/lib" \
 | 
						|
       ./configure
 | 
						|
 | 
						|
   If you have shared SSL libs installed in a directory where your run-time
 | 
						|
   linker doesn't find them (which usually causes configure failures), you can
 | 
						|
   provide the -R option to ld on some operating systems to set a hard-coded
 | 
						|
   path to the run-time linker:
 | 
						|
 | 
						|
        LDFLAGS=-R/usr/local/ssl/lib ./configure --with-ssl
 | 
						|
 | 
						|
   Another option to the previous trick, is to set LD_LIBRARY_PATH or edit the
 | 
						|
   /etc/ld.so.conf file.
 | 
						|
 | 
						|
   If your SSL library was compiled with rsaref (this was common in the past
 | 
						|
   when used in the United States), you may also need to set:
 | 
						|
 | 
						|
     LIBS=-lRSAglue -lrsaref
 | 
						|
     (as suggested by Doug Kaufman)
 | 
						|
 | 
						|
   MORE OPTIONS
 | 
						|
 | 
						|
     To force configure to use the standard cc compiler if both cc and gcc are
 | 
						|
     present, run configure like
 | 
						|
 | 
						|
       CC=cc ./configure
 | 
						|
         or
 | 
						|
       env Cc=cc ./configure
 | 
						|
 | 
						|
     To force a static library compile, disable the shared library creation
 | 
						|
     by running configure like:
 | 
						|
 | 
						|
       ./configure --disable-shared
 | 
						|
 | 
						|
     To tell the configure script to skip searching for thread-safe functions,
 | 
						|
     add an option like:
 | 
						|
 | 
						|
       ./configure --disable-thread
 | 
						|
 | 
						|
     To build curl with kerberos4 support enabled, curl requires the krb4 libs
 | 
						|
     and headers installed. You can then use a set of options to tell
 | 
						|
     configure where those are:
 | 
						|
 | 
						|
          --with-krb4-includes[=DIR]   Specify location of kerberos4 headers
 | 
						|
          --with-krb4-libs[=DIR]       Specify location of kerberos4 libs
 | 
						|
          --with-krb4[=DIR]            where to look for Kerberos4
 | 
						|
 | 
						|
     In most cases, /usr/athena is the install prefix and then it works with
 | 
						|
 | 
						|
       ./configure --with-krb4=/usr/athena
 | 
						|
 | 
						|
     If you're a curl developer and use gcc, you might want to enable more
 | 
						|
     debug options with the --enable-debug option.
 | 
						|
 | 
						|
Win32
 | 
						|
=====
 | 
						|
 
 | 
						|
   Without SSL:
 | 
						|
 | 
						|
      MingW32 (GCC-2.95) style
 | 
						|
      ------------------------
 | 
						|
        Run the 'mingw32.bat' file to get the proper environment variables
 | 
						|
        set, then run 'make mingw32' in the root dir.
 | 
						|
 | 
						|
        If you have any problems linking libraries or finding header files, be
 | 
						|
        sure to verify that the provided "Makefile.m32" files use the proper
 | 
						|
        paths, and adjust as necessary.
 | 
						|
 | 
						|
      Cygwin style
 | 
						|
      ------------
 | 
						|
        Almost identical to the unix installation. Run the configure script in
 | 
						|
        the curl root with 'sh configure'. Make sure you have the sh
 | 
						|
        executable in /bin/ or you'll see the configure fail towards the end.
 | 
						|
 | 
						|
        Run 'make'
 | 
						|
 | 
						|
      Microsoft command line style
 | 
						|
      ----------------------------
 | 
						|
        Run the 'vcvars32.bat' file to get the proper environment variables
 | 
						|
        set, then run 'nmake vc' in the root dir.
 | 
						|
 | 
						|
        The vcvars32.bat file is part of the Microsoft development
 | 
						|
        environment.
 | 
						|
 | 
						|
      IDE-style
 | 
						|
      -------------------------
 | 
						|
        If you use VC++, Borland or similar compilers. Include all lib source
 | 
						|
        files in a static lib "project" (all .c and .h files that is).
 | 
						|
        (you should name it libcurl or similar)
 | 
						|
 | 
						|
        Make the sources in the src/ drawer be a "win32 console application"
 | 
						|
        project. Name it curl.
 | 
						|
 | 
						|
        For VC++ 6, there's an included Makefile.vc6 that should be possible
 | 
						|
        to use out-of-the-box.
 | 
						|
 | 
						|
 | 
						|
   With SSL:
 | 
						|
 | 
						|
      MingW32 (GCC-2.95) style
 | 
						|
      ------------------------
 | 
						|
        Run the 'mingw32.bat' file to get the proper environment variables
 | 
						|
        set, then run 'make mingw32-ssl' in the root dir.
 | 
						|
 | 
						|
        If you have any problems linking libraries or finding header files, be
 | 
						|
        sure to look at the provided "Makefile.m32" files for the proper
 | 
						|
        paths, and adjust as necessary.
 | 
						|
 | 
						|
      Cygwin style
 | 
						|
      ------------
 | 
						|
        Haven't done, nor got any reports on how to do. It should although be
 | 
						|
        identical to the unix setup for the same purpose. See above.
 | 
						|
 | 
						|
      Microsoft command line style
 | 
						|
      ----------------------------
 | 
						|
 | 
						|
        Run the 'vcvars32.bat' file to get a proper environment. The
 | 
						|
        vcvars32.bat file is part of the Microsoft development environment and
 | 
						|
        you may find it in 'C:\Program Files\Microsoft Visual Studio\vc98\bin'
 | 
						|
        provided that you installed Visual C/C++ 6 in the default directory.
 | 
						|
 | 
						|
        Then run 'nmake vc' in curl's root directory.
 | 
						|
 | 
						|
        If you want to compile with zlib support, you will need to build
 | 
						|
        zlib (http://www.gzip.org/zlib/) as well. Please read the zlib 
 | 
						|
        documentation on how to compile zlib. Define the ZLIB_PATH environment 
 | 
						|
        variable to the location of zlib.h and zlib.lib, for example:
 | 
						|
 | 
						|
          set ZLIB_PATH=c:\zlib-1.2.1
 | 
						|
 | 
						|
        Then run 'nmake vc-zlib' in curl's root directory.
 | 
						|
 | 
						|
        If you want to compile with SSL support you need the OpenSSL package.
 | 
						|
        Please read the OpenSSL documentation on how to compile and install
 | 
						|
        the OpenSSL libraries.  The build process of OpenSSL generates the
 | 
						|
        libeay32.dll and ssleay32.dll files in the out32dll subdirectory in
 | 
						|
        the OpenSSL home directory.  OpenSSL static libraries (libeay32.lib,
 | 
						|
        ssleay32.lib, RSAglue.lib) are created in the out32 subdirectory.
 | 
						|
 | 
						|
        Before running nmake define the OPENSSL_PATH environment variable with
 | 
						|
        the root/base directory of OpenSSL, for example:
 | 
						|
 | 
						|
          set OPENSSL_PATH=c:\openssl-0.9.7d
 | 
						|
 | 
						|
        Then run 'nmake vc-ssl' or 'nmake vc-ssl-dll' in curl's root
 | 
						|
        directory.  'nmake vc-ssl' will create a libcurl static and dynamic
 | 
						|
        libraries in the lib subdirectory, as well as a statically linked
 | 
						|
        version of curl.exe in the src subdirectory.  This statically linked
 | 
						|
        version is a standalone executable not requiring any DLL at
 | 
						|
        runtime. This make method requires that you have the static OpenSSL
 | 
						|
        libraries available in OpenSSL's out32 subdirectory.
 | 
						|
        'nmake vc-ssl-dll' creates the libcurl dynamic library and
 | 
						|
        links curl.exe against libcurl and OpenSSL dynamically.
 | 
						|
        This executable requires libcurl.dll and the OpenSSL DLLs
 | 
						|
        at runtime. 
 | 
						|
        Run 'nmake vc-ssl-zlib' to build with both ssl and zlib support.
 | 
						|
 | 
						|
      Microsoft / Borland style
 | 
						|
      -------------------------
 | 
						|
        If you have OpenSSL, and want curl to take advantage of it, edit your
 | 
						|
        project properties to use the SSL include path, link with the SSL libs
 | 
						|
        and define the USE_SSLEAY symbol.
 | 
						|
 | 
						|
      Using Borland C++ compiler version 5.5.1 (available as free download
 | 
						|
      from Borland's site)
 | 
						|
      ---------------------------------------------------------------------
 | 
						|
      
 | 
						|
        compile openssl
 | 
						|
      
 | 
						|
        Make sure you include the paths to curl/include and openssl/inc32 in
 | 
						|
        your bcc32.cnf file
 | 
						|
      
 | 
						|
 | 
						|
        eg : -I"c:\Bcc55\include;c:\path_curl\include;c:\path_openssl\inc32"
 | 
						|
        
 | 
						|
        Check to make sure that all of the sources listed in lib/Makefile.b32
 | 
						|
        are present in the /path_to_curl/lib directory. (Check the src
 | 
						|
        directory for missing ones.)
 | 
						|
        
 | 
						|
        Make sure the environment variable "BCCDIR" is set to the install
 | 
						|
        location for the compiler eg : c:\Borland\BCC55
 | 
						|
        
 | 
						|
        command line:
 | 
						|
        make -f /path_to_curl/lib/Makefile-ssl.b32
 | 
						|
        
 | 
						|
        compile simplessl.c with appropriate links
 | 
						|
        
 | 
						|
        c:\curl\docs\examples\> bcc32 -L c:\path_to_curl\lib\libcurl.lib
 | 
						|
                                      -L c:\borland\bcc55\lib\psdk\ws2_32.lib
 | 
						|
                                      -L c:\openssl\out32\libeay32.lib
 | 
						|
                                      -L c:\openssl\out32\ssleay32.lib
 | 
						|
                                      simplessl.c
 | 
						|
 | 
						|
   Disabling Specific Protocols:
 | 
						|
 | 
						|
      The configure utility, unfortunately, is not available for the Windows
 | 
						|
      environment, therefore, you cannot use the various disable-protocol
 | 
						|
      options of the configure utility on this platform.
 | 
						|
 | 
						|
      However, you can use the following defines to disable specific
 | 
						|
      protocols:
 | 
						|
 | 
						|
      HTTP_ONLY             disables all protocols except HTTP
 | 
						|
      CURL_DISABLE_FTP      disables FTP
 | 
						|
      CURL_DISABLE_LDAP     disables LDAP
 | 
						|
      CURL_DISABLE_TELNET   disables TELNET
 | 
						|
      CURL_DISABLE_DICT     disables DICT
 | 
						|
      CURL_DISABLE_FILE     disables FILE
 | 
						|
      CURL_DISABLE_GOPHER   disables GOPHER
 | 
						|
 | 
						|
      If you want to set any of these defines you have the following
 | 
						|
      possibilities:
 | 
						|
 | 
						|
      - Modify lib/setup.h
 | 
						|
      - Modify lib/Makefile.vc6
 | 
						|
      - Add defines to Project/Settings/C/C++/General/Preprocessor Definitions
 | 
						|
        in the curllib.dsw/curllib.dsp Visual C++ 6 IDE project.
 | 
						|
 | 
						|
IBM OS/2
 | 
						|
========
 | 
						|
 | 
						|
   Building under OS/2 is not much different from building under unix.
 | 
						|
   You need:
 | 
						|
 | 
						|
      - emx 0.9d
 | 
						|
      - GNU make
 | 
						|
      - GNU patch
 | 
						|
      - ksh
 | 
						|
      - GNU bison
 | 
						|
      - GNU file utilities
 | 
						|
      - GNU sed
 | 
						|
      - autoconf 2.13
 | 
						|
 | 
						|
   If you want to build with OpenSSL or OpenLDAP support, you'll need to
 | 
						|
   download those libraries, too. Dirk Ohme has done some work to port SSL
 | 
						|
   libraries under OS/2, but it looks like he doesn't care about emx.  You'll
 | 
						|
   find his patches on: http://come.to/Dirk_Ohme
 | 
						|
 | 
						|
   If during the linking you get an error about _errno being an undefined
 | 
						|
   symbol referenced from the text segment, you need to add -D__ST_MT_ERRNO__
 | 
						|
   in your definitions.
 | 
						|
 | 
						|
   If everything seems to work fine but there's no curl.exe, you need to add
 | 
						|
   -Zexe to your linker flags.
 | 
						|
 | 
						|
   If you're getting huge binaries, probably your makefiles have the -g in
 | 
						|
   CFLAGS.
 | 
						|
 | 
						|
VMS
 | 
						|
===
 | 
						|
   (The VMS section is in whole contributed by the friendly Nico Baggus)
 | 
						|
 | 
						|
   Curl seems to work with FTP & HTTP other protocols are not tested.  (the
 | 
						|
   perl http/ftp testing server supplied as testing too cannot work on VMS
 | 
						|
   because vms has no concept of fork(). [ I tried to give it a whack, but
 | 
						|
   thats of no use.
 | 
						|
 | 
						|
   SSL stuff has not been ported.
 | 
						|
 | 
						|
   Telnet has about the same issues as for Win32. When the changes for Win32
 | 
						|
   are clear maybe they'll work for VMS too. The basic problem is that select
 | 
						|
   ONLY works for sockets.
 | 
						|
 | 
						|
   Marked instances of fopen/[f]stat that might become a problem, especially
 | 
						|
   for non stream files. In this regard, the files opened for writing will be
 | 
						|
   created stream/lf and will thus be safe. Just keep in mind that non-binary
 | 
						|
   read/wring from/to files will have a records size limit of 32767 bytes
 | 
						|
   imposed.
 | 
						|
 | 
						|
   Stat to get the size of the files is again only safe for stream files &
 | 
						|
   fixed record files without implied CC.
 | 
						|
 | 
						|
   -- My guess is that only allowing access to stream files is the quickest
 | 
						|
   way to get around the most issues. Therefore all files need to to be
 | 
						|
   checked to be sure they will be stream/lf before processing them.  This is
 | 
						|
   the easiest way out, I know. The reason for this is that code that needs to
 | 
						|
   report the filesize will become a pain in the ass otherwise.
 | 
						|
 | 
						|
   Exit status.... Well we needed something done here,
 | 
						|
 | 
						|
   VMS has a structured exist status:
 | 
						|
   | 3  |       2    |     1       |  0|
 | 
						|
   |1098|765432109876|5432109876543|210|
 | 
						|
   +----+------------+-------------+---+
 | 
						|
   |Ctrl|  Facility  | Error code  |sev|
 | 
						|
   +----+------------+-------------+---+
 | 
						|
 | 
						|
   With the Ctrl-bits an application can tell if part or the whole message has
 | 
						|
   allready been printed from the program, DCL doesn't need to print it again.
 | 
						|
 | 
						|
   Facility - basicaly the program ID. A code assigned to the program
 | 
						|
   the name can be fetched from external or internal message libraries
 | 
						|
   Errorcode - the errodes assigned by the application
 | 
						|
   Sev. - severity: Even = error, off = non error
 | 
						|
      0 = Warning
 | 
						|
      1 = Success
 | 
						|
      2 = Error
 | 
						|
      3 = Information
 | 
						|
      4 = Fatal 
 | 
						|
      <5-7> reserved.
 | 
						|
 | 
						|
   This all presents itself with:
 | 
						|
   %<FACILITY>-<SeV>-<Errorname>, <Error message>
 | 
						|
 | 
						|
   See also the src/curlmsg.msg file, it has the source for the messages In
 | 
						|
   src/main.c a section is devoted to message status values, the globalvalues
 | 
						|
   create symbols with certain values, referenced from a compiled message
 | 
						|
   file. Have all exit function use a exit status derived from a translation
 | 
						|
   table with the compiled message codes.
 | 
						|
 | 
						|
   This was all compiled with:
 | 
						|
 | 
						|
      Compaq C V6.2-003 on OpenVMS Alpha V7.1-1H2
 | 
						|
 | 
						|
   So far for porting notes as of:
 | 
						|
   13-jul-2001
 | 
						|
   N. Baggus
 | 
						|
 | 
						|
QNX
 | 
						|
===
 | 
						|
   (This section was graciously brought to us by David Bentham)
 | 
						|
 | 
						|
   As QNX is targetted for resource constrained environments, the QNX headers
 | 
						|
   set conservative limits. This includes the FD_SETSIZE macro, set by default
 | 
						|
   to 32. Socket descriptors returned within the CURL library may exceed this,
 | 
						|
   resulting in memory faults/SIGSEGV crashes when passed into select(..)
 | 
						|
   calls using fd_set macros.
 | 
						|
 | 
						|
   A good all-round solution to this is to override the default when building
 | 
						|
   libcurl, by overriding CFLAGS during configure, example
 | 
						|
   #  configure CFLAGS='-DFD_SETSIZE=64 -g -O2'
 | 
						|
 | 
						|
CROSS COMPILE
 | 
						|
=============
 | 
						|
 | 
						|
   (This section was graciously brought to us by Jim Duey, 23-oct-2001)
 | 
						|
 | 
						|
   Download and unpack the cURL package.  Version should be 7.9.1 or later.
 | 
						|
 | 
						|
   'cd' to the new directory. (ie. curl-7.9.1-pre4)
 | 
						|
 | 
						|
   Set environment variables to point to the cross-compile toolchain and call
 | 
						|
   configure with any options you need.  Be sure and specify the '--host' and
 | 
						|
   '--build' parameters at configuration time.  The following script is an
 | 
						|
   example of cross-compiling for the IBM 405GP PowerPC processor using the
 | 
						|
   toolchain from MonteVista for Hardhat Linux.
 | 
						|
 | 
						|
   (begin script)
 | 
						|
 | 
						|
   #! /bin/sh
 | 
						|
 | 
						|
   export PATH=$PATH:/opt/hardhat/devkit/ppc/405/bin
 | 
						|
   export CPPFLAGS="-I/opt/hardhat/devkit/ppc/405/target/usr/include"
 | 
						|
   export AR=ppc_405-ar
 | 
						|
   export AS=ppc_405-as
 | 
						|
   export LD=ppc_405-ld
 | 
						|
   export RANLIB=ppc_405-ranlib
 | 
						|
   export CC=ppc_405-gcc
 | 
						|
   export NM=ppc_405-nm
 | 
						|
 | 
						|
   configure --target=powerpc-hardhat-linux \
 | 
						|
	--host=powerpc-hardhat-linux \
 | 
						|
	--build=i586-pc-linux-gnu \
 | 
						|
	--prefix=/opt/hardhat/devkit/ppc/405/target/usr/local \
 | 
						|
	--exec-prefix=/usr/local
 | 
						|
 | 
						|
   (end script)
 | 
						|
 | 
						|
   The '--prefix' parameter specifies where cURL will be installed.  If
 | 
						|
   'configure' completes successfully, do 'make' and 'make install' as usual.
 | 
						|
 | 
						|
RISC OS
 | 
						|
=======
 | 
						|
   The library can be cross-compiled using gccsdk as follows:
 | 
						|
 | 
						|
        CC=riscos-gcc AR=riscos-ar RANLIB='riscos-ar -s' ./configure \
 | 
						|
             --host=arm-riscos-aof --without-random --disable-shared
 | 
						|
        make
 | 
						|
 | 
						|
   where riscos-gcc and riscos-ar are links to the gccsdk tools.
 | 
						|
   You can then link your program with curl/lib/.libs/libcurl.a
 | 
						|
 | 
						|
 | 
						|
AmigaOS
 | 
						|
=======
 | 
						|
   (This section was graciously brought to us by Diego Casorran)
 | 
						|
 | 
						|
   To build cURL/libcurl on AmigaOS just type 'make amiga' ...
 | 
						|
 | 
						|
   What you need is:    (not tested with others versions)
 | 
						|
 | 
						|
        GeekGadgets / gcc 2.95.3 (http://www.geekgadgets.org/)
 | 
						|
 | 
						|
        AmiTCP SDK v4.3 (http://www.aminet.net/comm/tcp/AmiTCP-SDK-4.3.lha)
 | 
						|
 | 
						|
        Native Developer Kit (http://www.amiga.com/3.9/download/NDK3.9.lha)
 | 
						|
 | 
						|
   As no ixemul.library is required you will be able to build it for
 | 
						|
   WarpOS/PowerPC (not tested by me), as well a MorphOS version should be
 | 
						|
   possible with no problems.
 | 
						|
 | 
						|
   To enable SSL support, you need a OpenSSL native version (without ixemul),
 | 
						|
   you can find a precompiled package at http://amiga.sourceforge.net/OpenSSL/
 | 
						|
 | 
						|
 | 
						|
NetWare
 | 
						|
=======
 | 
						|
 | 
						|
   To compile curl.nlm / libcurl.nlm you need:
 | 
						|
   - either any gcc / nlmconv, or CodeWarrior 7 PDK 4 or later.
 | 
						|
   - gnu make and awk running on the platform you compile on;
 | 
						|
     native Win32 versions can be downloaded from:
 | 
						|
     http://www.gknw.com/development/prgtools/ 
 | 
						|
   - recent Novell LibC SDK availabable from:
 | 
						|
     http://developer.novell.com/ndk/libc.htm
 | 
						|
   - optional zlib sources (at the moment only dynamic linking with zlib.imp); 
 | 
						|
     sources with NetWare Makefile can be optained from:
 | 
						|
     http://www.gknw.com/mirror/zlib/
 | 
						|
 | 
						|
   Set a search path to your compiler, linker and tools; if you want to have
 | 
						|
   zlib support then set the environment var ZLIB_PATH pointing to your zlib
 | 
						|
   sources, on Linux make sure the var OSTYPE contains the string 'linux';
 | 
						|
   and finally type 'make netware' from the top source directory...
 | 
						|
   I found on some Linux systems (RH9) that OS detection didnt work although
 | 
						|
   a 'set | grep OSTYPE' shows the var present and set; I simply overwrote it
 | 
						|
   with 'OSTYPE=linux-rh9-gnu' and the detection in the Makefile worked...;
 | 
						|
   other options are currently not supported, although partly prepared.
 | 
						|
   The Ares lib builds arlready fine, and both test tools work fine at least 
 | 
						|
   when build with CodeWarrior...; dont know yet why they fail when build with
 | 
						|
   gcc though; if you want to compile with Ares support then set an env var
 | 
						|
   WITH_ARES=1; I've not tested yet including libcares into curl.
 | 
						|
   Any help in testing appreciated!
 | 
						|
   Buils automatically created 4 times a day from current CVS are here:
 | 
						|
   http://www.gknw.com/mirror/curl/autobuilds/
 | 
						|
   the status of these buids can be viewed at the autobuild table:
 | 
						|
   http://curl.haxx.se/auto/
 | 
						|
 | 
						|
 | 
						|
PORTS
 | 
						|
=====
 | 
						|
   This is a probably incomplete list of known hardware and operating systems
 | 
						|
   that curl has been compiled for. If you know a system curl compiles and
 | 
						|
   runs on, that isn't listed, please let us know!
 | 
						|
 | 
						|
        - Alpha DEC OSF 4
 | 
						|
        - Alpha Digital UNIX v3.2
 | 
						|
        - Alpha FreeBSD 4.1, 4.5
 | 
						|
        - Alpha Linux 2.2, 2.4
 | 
						|
        - Alpha NetBSD 1.5.2
 | 
						|
        - Alpha OpenBSD 3.0
 | 
						|
        - Alpha OpenVMS V7.1-1H2
 | 
						|
        - Alpha Tru64 v5.0 5.1
 | 
						|
        - HP-PA HP-UX 9.X 10.X 11.X
 | 
						|
        - HP-PA Linux
 | 
						|
        - HP3000 MPE/iX
 | 
						|
        - MIPS IRIX 6.2, 6.5
 | 
						|
        - MIPS Linux
 | 
						|
        - Pocket PC/Win CE 3.0
 | 
						|
        - Power AIX 3.2.5, 4.2, 4.3.1, 4.3.2, 5.1
 | 
						|
        - PowerPC Darwin 1.0
 | 
						|
        - PowerPC Linux
 | 
						|
        - PowerPC Mac OS 9
 | 
						|
        - PowerPC Mac OS X
 | 
						|
        - SINIX-Z v5
 | 
						|
        - Sparc Linux
 | 
						|
        - Sparc Solaris 2.4, 2.5, 2.5.1, 2.6, 7, 8
 | 
						|
        - Sparc SunOS 4.1.X
 | 
						|
        - StrongARM (and other ARM) RISC OS 3.1, 4.02
 | 
						|
        - StrongARM Linux 2.4
 | 
						|
        - StrongARM NetBSD 1.4.1
 | 
						|
        - Ultrix 4.3a
 | 
						|
        - i386 BeOS
 | 
						|
        - i386 DOS
 | 
						|
        - i386 FreeBSD
 | 
						|
        - i386 HURD
 | 
						|
        - i386 Linux 1.3, 2.0, 2.2, 2.3, 2.4
 | 
						|
        - i386 NetBSD
 | 
						|
        - i386 Novell NetWare
 | 
						|
        - i386 OS/2
 | 
						|
        - i386 OpenBSD
 | 
						|
        - i386 SCO unix
 | 
						|
        - i386 Solaris 2.7
 | 
						|
        - i386 Windows 95, 98, ME, NT, 2000
 | 
						|
        - i386 QNX 6
 | 
						|
        - i486 ncr-sysv4.3.03 (NCR MP-RAS)
 | 
						|
        - ia64 Linux 2.3.99
 | 
						|
        - m68k AmigaOS 3
 | 
						|
        - m68k Linux
 | 
						|
        - m68k OpenBSD
 | 
						|
        - m88k dg-dgux5.4R3.00
 | 
						|
        - s390 Linux 
 | 
						|
        - XScale/PXA250 Linux 2.4
 | 
						|
 | 
						|
Useful URLs
 | 
						|
===========
 | 
						|
 | 
						|
OpenSSL   http://www.openssl.org
 | 
						|
MingW     http://www.mingw.org
 | 
						|
OpenLDAP  http://www.openldap.org
 | 
						|
Zlib      http://www.gzip.org/zlib/
 |