Compilation and Installation

From OpenSSLWiki
Revision as of 13:13, 6 July 2013 by Frukto (talk | contribs) (cleaned up 'getting source code' additional links and explanation added.)
Jump to navigationJump to search

Get source code

The OpenSSL source code can be downloaded from www.openssl.org/source/ or any suitable ftp mirror. There are various versions including stable as well as unstable versions.

The source code is manged via Git, the repository is

git://git.openssl.org/openssl.git

The source is also available via a GitHub mirror. This repository is updated every 15 minutes.

If you don't know what Git is or how to use it, see the introduction at the Git documentation page. Once you installed git you can use

$ git clone git://git.openssl.org/openssl.git

in an empty directory to download the latest (development) version. There are other branches available as well.

Compilation

once you untarred source ( or got it from a source control ) best is to look at README provided in it.

cat README

where you will understand that you have to read another file INSTALL :

cat INSTALL

Depending on your platform you will have to pick up the right INSTALL by example INSTALL.W64. Default is for Unix based systems.

Quick

./config <options ...>
make depend
make
make test
make install

Various options can be found examining the Configure file (there is a well commented block at its top). OpenSSL ships with SSLv2, SSLv3 and Compression enabled by default (see my $disabled), so you might want to use -no-ssl2, -no-ssl3, and -no-comp.

Platfom specific

Linux

Intel

ARM

Windows

W32 / Windows NT - Windows 9x

type INSTALL.W32

  • you need Perl for Win32. Unless you will build on Cygwin, you will need ActiveState Perl, available from http://www.activestate.com/ActivePerl.
  • one of the following C compilers:
    • Visual C++
    • Borland C
    • GNU C (Cygwin or MinGW)
  • Netwide Assembler, a.k.a. NASM, available from http://nasm.sourceforge.net/ is required if you intend to utilize assembler modules. Note that NASM is now the only supported assembler.

W64

type INSTALL.W64

basically some specific 64bits information, default Windows build information is still in INSTALL.W32

Windows CE

Mac

More

VAX/VMS

I you wonder what are files ending with .com like test/testca.com those are VAX/VMX scripts. This code is still maintained.

OS/2

NetWare

5.x 6.x