X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=INSTALL;h=7eaa8147c3b8563699d5e51ed9f3428ee6bd9c14;hp=f0287c69986d8250ccefa674985590a133afc837;hb=c2222c2ea255aa0d9580dcaf9232b809559fba92;hpb=2fdf5d7c2354b76bcc429b5f2c582a580e12d50d diff --git a/INSTALL b/INSTALL index f0287c6998..7eaa8147c3 100644 --- a/INSTALL +++ b/INSTALL @@ -2,13 +2,16 @@ INSTALLATION ON THE UNIX PLATFORM --------------------------------- - [See INSTALL.W32 for instructions for compiling OpenSSL on Windows systems, - and INSTALL.VMS for installing on OpenVMS systems.] + [Installation on Windows, OpenVMS and MacOS (before MacOS X) is described + in INSTALL.W32, INSTALL.VMS and INSTALL.MacOS.] To install OpenSSL, you will need: + * make * Perl 5 * an ANSI C compiler + * a development environment in form of development libraries and C + header files * a supported Unix operating system Quick Start @@ -33,7 +36,8 @@ Configuration Options --------------------- - There are several options to ./config to customize the build: + There are several options to ./config (or ./Configure) to customize + the build: --prefix=DIR Install in DIR/bin, DIR/lib, DIR/include/openssl. Configuration files used by OpenSSL will be in DIR/ssl @@ -42,9 +46,6 @@ --openssldir=DIR Directory for OpenSSL files. If no prefix is specified, the library files and binaries are also installed there. - rsaref Build with RSADSI's RSAREF toolkit (this assumes that - librsaref.a is in the library search path). - no-threads Don't try to build with support for multi-threaded applications. @@ -52,6 +53,21 @@ This will usually require additional system-dependent options! See "Note on multi-threading" below. + no-zlib Don't try to build with support for zlib compression and + decompression. + + zlib Build with support for zlib compression/decompression. + + zlib-dynamic Like "zlib", but has OpenSSL load the zlib library dynamically + when needed. This is only supported on systems where loading + of shared libraries is supported. This is the default choice. + + no-shared Don't try to create shared libraries. + + shared In addition to the usual static libraries, create shared + libraries on platforms where it's supported. See "Note on + shared libraries" below. + no-asm Do not use assembler code. 386 Use the 80386 instruction set only (the default x86 code is @@ -77,8 +93,9 @@ This guesses at your operating system (and compiler, if necessary) and configures OpenSSL based on this guess. Run ./config -t to see - if it guessed correctly. If it did not get it correct or you want to - use a different compiler then go to step 1b. Otherwise go to step 2. + if it guessed correctly. If you want to use a different compiler, you + are cross-compiling for another platform, or the ./config guess was + wrong for other reasons, go to step 1b. Otherwise go to step 2. On some systems, you can include debugging information as follows: @@ -101,7 +118,8 @@ If your system is not available, you will have to edit the Configure program and add the correct configuration for your system. The - generic configurations "cc" or "gcc" should usually work. + generic configurations "cc" or "gcc" should usually work on 32 bit + systems. Configure creates the file Makefile.ssl from Makefile.org and defines various macros in crypto/opensslconf.h (generated from @@ -115,10 +133,12 @@ OpenSSL binary ("openssl"). The libraries will be built in the top-level directory, and the binary will be in the "apps" directory. - If "make" fails, please report the problem to - (note that your message will be forwarded to a public mailing list). - Include the output of "./config -t" and the OpenSSL version - number in your message. + If "make" fails, look at the output. There may be reasons for + the failure that aren't problems in OpenSSL itself (like missing + standard headers). If it is a problem with OpenSSL itself, please + report the problem to (note that your + message will be forwarded to a public mailing list). Include the + output of "make report" in your message. [If you encounter assembler error messages, try the "no-asm" configuration option as an immediate fix.] @@ -130,10 +150,13 @@ $ make test - If a test fails, try removing any compiler optimization flags from - the CFLAGS line in Makefile.ssl and run "make clean; make". Please - send a bug report to , including the - output of "openssl version -a" and of the failed test. + If a test fails, look at the output. There may be reasons for + the failure that isn't a problem in OpenSSL itself (like a missing + or malfunctioning bc). If it is a problem with OpenSSL itself, + try removing any compiler optimization flags from the CFLAGS line + in Makefile.ssl and run "make clean; make". Please send a bug + report to , including the output of + "make report". 4. If everything tests ok, install OpenSSL with @@ -144,6 +167,8 @@ certs Initially empty, this is the default location for certificate files. + man/man1 Manual pages for the 'openssl' command line tool + man/man3 Manual pages for the libraries (very incomplete) misc Various scripts. private Initially empty, this is the default location for private key files. @@ -249,3 +274,19 @@ you can still use "no-threads" to suppress an annoying warning message from the Configure script.) + + Note on shared libraries + ------------------------ + + Shared library is currently an experimental feature. The only reason to + have them would be to conserve memory on systems where several program + are using OpenSSL. Binary backward compatibility can't be guaranteed + before OpenSSL version 1.0. + + For some systems, the OpenSSL Configure script knows what is needed to + build shared libraries for libcrypto and libssl. On these systems, + the shared libraries are currently not created by default, but giving + the option "shared" will get them created. This method supports Makefile + targets for shared library creation, like linux-shared. Those targets + can currently be used on their own just as well, but this is expected + to change in future versions of OpenSSL.