Difference between revisions of "OpenSSL"
From CBLFS
Jump to navigationJump to searchLine 34: | Line 34: | ||
{{Note|When building on Sparc in Pure 64bit, use the configure command from the multilib section, then proceed as normal}} | {{Note|When building on Sparc in Pure 64bit, use the configure command from the multilib section, then proceed as normal}} | ||
+ | |||
+ | {{Note|Parallel build (make -j ...) may fail to install openssl but still appear to complete "successfully," without stopping at the error.}} | ||
+ | |||
+ | {{Note|Some patches may fail (order dependent?). I suggest manually editing patch files to remove unnecessary patches to Configure~ (note the "~"). Some patches may still fail, in which case you may easily examine the ".rej" file and make the change manually. Developer may want to fix this, remove Configure~ (and any other ~ files) from the build directory, and re-diff.}} | ||
+ | |||
Compile the package: | Compile the package: | ||
Line 51: | Line 56: | ||
== Multilib == | == Multilib == | ||
+ | |||
+ | {{Note|Parallel build (make -j ...) may fail to install openssl but still appear to complete "successfully," without stopping at the error.}} | ||
+ | |||
+ | {{Note|Some patches may fail (order dependent?). I suggest manually editing patch files to remove unnecessary patches to Configure~ (note the "~"). Some patches may still fail, in which case you may easily examine the ".rej" file and make the change manually. Developer may want to fix this, remove Configure~ (and any other ~ files) from the build directory, and re-diff.}} | ||
=== 32Bit === | === 32Bit === |
Revision as of 09:27, 21 March 2009
Download Source: | http://www.openssl.org/source/openssl-1.0.1e.tar.gz |
---|---|
Required Patch: | http://svn.cross-lfs.org/svn/repos/patches/openssl/openssl-1.0.1e-fix_manpages-1.patch |
Required Patch: | http://svn.cross-lfs.org/svn/repos/patches/openssl/openssl-1.0.1e-build_fix-1.patch |
Required Patch (Multilib): | http://svn.cross-lfs.org/svn/repos/patches/openssl/openssl-1.0.1e-allow_lib64-2.patch |
Required Patch (x86_64 Multilib): | http://svn.cross-lfs.org/svn/repos/patches/openssl/openssl-1.0.1e-32bit_x86_64-1.patch |
Required Patch (MIPS): | http://svn.cross-lfs.org/svn/repos/patches/openssl/openssl-1.0.1e-mips_support-1.patch |
Introduction to OpenSSL
OpenSSH implements encrypted transports over SSL (v2 and v3) and TLSv1, and also serves as a general purpose encryption library
Project Homepage: http://www.openssl.org/
Dependencies
Optional
- bc (used by the testsuite)
Non-Multilib
When building on Sparc in Pure 64bit, use the configure command from the multilib section, then proceed as normal
Parallel build (make -j ...) may fail to install openssl but still appear to complete "successfully," without stopping at the error.
Some patches may fail (order dependent?). I suggest manually editing patch files to remove unnecessary patches to Configure~ (note the "~"). Some patches may still fail, in which case you may easily examine the ".rej" file and make the change manually. Developer may want to fix this, remove Configure~ (and any other ~ files) from the build directory, and re-diff.
Compile the package:
patch -Np1 -i ../openssl-1.0.1e-fix_manpages-1.patch && patch -Np1 -i ../openssl-1.0.1e-build_fix-1.patch && patch -Np1 -i ../openssl-1.0.1e-mips_support-1.patch && ./config --openssldir=/etc/ssl --prefix=/usr shared && make MANDIR=/usr/share/man
Install the package
make MANDIR=/usr/share/man install && cp -v -r certs /etc/ssl && install -v -d -m755 /usr/share/doc/openssl-1.0.1e && cp -v -r doc/{HOWTO,README,*.{txt,html,gif}} \ /usr/share/doc/openssl-1.0.1e
Multilib
Parallel build (make -j ...) may fail to install openssl but still appear to complete "successfully," without stopping at the error.
Some patches may fail (order dependent?). I suggest manually editing patch files to remove unnecessary patches to Configure~ (note the "~"). Some patches may still fail, in which case you may easily examine the ".rej" file and make the change manually. Developer may want to fix this, remove Configure~ (and any other ~ files) from the build directory, and re-diff.
32Bit
Apply Patches:
patch -Np1 -i ../openssl-1.0.1e-fix_manpages-1.patch && patch -Np1 -i ../openssl-1.0.1e-build_fix-1.patch && patch -Np1 -i ../openssl-1.0.1e-mips_support-1.patch
Configure the Package (Use the appropriate command):
x86_64
patch -Np1 -i ../openssl-1.0.1e-32bit_x86_64-1.patch && ./Configure linux-x86_64-32 --openssldir=/etc/ssl --prefix=/usr shared
Sparc
./Configure linux-sparcv9 --openssldir=/etc/ssl --prefix=/usr shared
Mips (Little-Endian)
./Configure linux-mipsel --openssldir=/etc/ssl --prefix=/usr shared
Mips (Big-Endian)
./Configure linux-mips --openssldir=/etc/ssl --prefix=/usr shared
PowerPC
./Configure linux-ppc --openssldir=/etc/ssl --prefix=/usr shared
Compile the package:
USE_ARCH=32 make CC="gcc ${BUILD32}" PERL=/usr/bin/perl
Install the package:
USE_ARCH=32 make PERL=/usr/bin/perl MANDIR=/usr/share/man install
N32
Apply Patches:
patch -Np1 -i ../openssl-1.0.1e-fix_manpages-1.patch && patch -Np1 -i ../openssl-1.0.1e-build_fix-1.patch && patch -Np1 -i ../openssl-1.0.1e-mips_support-1.patch
This patch allows OpenSSL to be installed a dir other than lib.
patch -Np1 -i ../openssl-1.0.1e-allow_lib64-2.patch
Configure the Package (Use the appropriate command):
Mips (Little-Endian)
./Configure linux-mipsel-n32 --openssldir=/etc/ssl --prefix=/usr shared
Mips (Big-Endian)
./Configure linux-mips-n32 --openssldir=/etc/ssl --prefix=/usr shared
Compile the package:
USE_ARCH=n32 make CC="gcc ${BUILDN32}" PERL=/usr/bin/perl LIBDIR=lib32
Install the package:
USE_ARCH=n32 make PERL=/usr/bin/perl MANDIR=/usr/share/man LIBDIR=lib32 install
64Bit
Apply Patches:
patch -Np1 -i ../openssl-1.0.1e-fix_manpages-1.patch && patch -Np1 -i ../openssl-1.0.1e-build_fix-1.patch && patch -Np1 -i ../openssl-1.0.1e-mips_support-1.patch
This patch allows OpenSSL to be installed into a dir other than lib:
patch -Np1 -i ../openssl-1.0.1e-allow_lib64-2.patch
Configure the Package (Use the appropriate command):
x86_64
./Configure linux-x86_64 --openssldir=/etc/ssl --prefix=/usr shared
Sparc
./Configure linux64-sparcv9 --openssldir=/etc/ssl --prefix=/usr shared
Mips (Little-Endian)
./Configure linux-mips64el --openssldir=/etc/ssl --prefix=/usr shared
Mips (Big-Endian)
./Configure linux-mips64 --openssldir=/etc/ssl --prefix=/usr shared
PowerPC
./Configure linux-ppc64 --openssldir=/etc/ssl --prefix=/usr shared
Compile the package:
USE_ARCH=64 make CC="gcc ${BUILD64}" PERL=/usr/bin/perl LIBDIR=lib64
Install the package:
USE_ARCH=64 make PERL=/usr/bin/perl MANDIR=/usr/share/man LIBDIR=lib64 install
Contents
Installed Programs: | c_rehash, openssl |
---|---|
Installed Libraries: | libcrypto.{so,a}, libssl.{so,a} |
Installed Directories: | /etc/ssl, /usr/include/ssl, /usr/lib/engines, /usr/share/doc/openssl-1.0.1e |
Short Descriptions
c_rehash | is a Perl script that scans all files in a directory and adds symbolic links to their hash values. |
---|---|
openssl | is a command-line tool for using the various cryptography functions of OpenSSL's crypto library from the shell. |
libcrypto.{so,a} | implements a wide range of cryptographic algorithms used in various Internet standards. |
libssl.{so,a} | implements the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols |