1)检查现在版本
[root@wilson]# ssh -V
OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
2)上传软件到指定目录/soft
3)解压需要安装文件
[root@wilson]#gunzip openssh-4.4p1.tar.gz
[root@wilson]#tar –xvf openssh-4.4p1.tar
4) 编译补丁包
[root@wilson]./configure
configure
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for gawk... gawk
checking how to run the C preprocessor... gcc -E
checking for ranlib... ranlib
checking for a BSD-compatible install... /usr/bin/install -c
checking for egrep... (cached) /bin/grep -E
……
……
checking for ent... no
checking for getutxent... yes
checking for getutxid... yes
……
……
checking for getutxline... yes
checking for pututxline... yes
checking for setutxent... yes
checking for utmpxname... yes
checking for daemon... yes
checking for getpagesize... yes
checking whether snprintf correctly terminates long strings... yes
checking whether snprintf can declare const char *fmt... yes
checking whether system supports SO_PEERCRED getsockopt... yes
checking for (overly) strict mkstemp... yes
checking if openpty correctly handles controlling tty... yes
checking whether getpgrp requires zero arguments... yes
checking OpenSSL header version... 90802f (OpenSSL 0.9.8e-rhel5 01 Jul 2008)
checking OpenSSL library version... 90802f (OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008)
checking whether OpenSSL's headers match the library... yes
checking if programs using OpenSSL functions will link... yes
checking whether OpenSSL has crippled AES support... no
checking for crypt in -lcrypt... yes
checking for SHA256_Update... yes
checking for EVP_sha256... yes
checking for ia_openinfo in -liaf... no
checking whether OpenSSL's PRNG is internally seeded... yes
checking for ls... /bin/ls
checking for netstat... /bin/netstat
checking for arp... /sbin/arp
checking for ifconfig... /sbin/ifconfig
checking for jstat... no
checking for ps... /bin/ps
checking for sar... /usr/bin/sar
checking for w... /usr/bin/w
checking for who... /usr/bin/who
checking for last... /usr/bin/last
checking for lastlog... /usr/bin/lastlog
checking for df... /bin/df
checking for vmstat... /usr/bin/vmstat
checking for uptime... /usr/bin/uptime
checking for ipcs... /usr/bin/ipcs
checking for tail... /usr/bin/tail
checking for long long... yes
checking for unsigned long long... yes
checking for long double... yes
checking for char... yes
checking size of char... 1
checking for short int... yes
checking size of short int... 2
checking for int... yes
checking size of int... 4
checking for long int... yes
checking size of long int... 4
checking for long long int... yes
checking size of long long int... 8
checking for u_int type... yes
checking for intXX_t types... yes
checking for int64_t type... yes
checking for u_intXX_t types... yes
checking for u_int64_t types... yes
checking for uintXX_t types in stdint.h... yes
checking for u_char... yes
checking for socklen_t... yes
checking for sig_atomic_t... yes
checking for in_addr_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking for clock_t... yes
checking for sa_family_t... yes
checking for pid_t... yes
checking for mode_t... yes
checking for struct sockaddr_storage... yes
checking for struct sockaddr_in6... yes
checking for struct in6_addr... yes
checking for struct addrinfo... yes
checking for struct timeval... yes
checking for struct timespec... yes
checking for ut_host field in utmp.h... yes
checking for ut_host field in utmpx.h... yes
checking for syslen field in utmpx.h... no
checking for ut_pid field in utmp.h... yes
checking for ut_type field in utmp.h... yes
checking for ut_type field in utmpx.h... yes
checking for ut_tv field in utmp.h... yes
checking for msg_accrights field in struct msghdr... no
checking whether va_copy exists... yes
checking whether _getlong is declared... no
checking for HEADER.ad... yes
checking for xauth... /usr/bin/xauth
checking for "/dev/ptc"... no
checking for nroff... /usr/bin/nroff
checking if the systems has expire shadow information... yes
checking for "/etc/default/login"... no
Adding /usr/local/bin to USER_PATH so scp will work
checking if we need to convert IPv4 in IPv6-mapped addresses... yes ( default)
checking if your system defines LASTLOG_FILE... no
checking if your system defines _PATH_LASTLOG... yes
checking if your system defines UTMP_FILE... yes
checking if your system defines WTMP_FILE... yes
checking if your system defines UTMPX_FILE... no
checking if your system defines WTMPX_FILE... no
configure: creating ./config.status
config.status: creating Makefile
config.status: WARNING:    Makefile.in seems to ignore the --datarootdir setting
config.status: creating buildpkg.sh
config.status: creating opensshd.init
config.status: creating openssh.xml
config.status: creating openbsd-compat/Makefile
config.status: creating openbsd-compat/regress/Makefile
config.status: creating scard/Makefile
config.status: WARNING:    scard/Makefile.in seems to ignore the --datarootdir setting
config.status: creating ssh_prng_cmds
config.status: creating survey.sh
config.status: creating config.h

OpenSSH has been configured with the following options:
                                         User binaries: /usr/local/bin
                                     System binaries: /usr/local/sbin
                             Configuration files: /usr/local/etc
                                     Askpass program: /usr/local/libexec/ssh-askpass
                                            Manual pages: /usr/local/share/man/manX
                                                    PID file: /var/run
    Privilege separation chroot path: /var/empty
                        sshd default user PATH: /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
                                        Manpage format: doc
                                             PAM support: no
                                     OSF SIA support: no
                                 KerberosV support: no
                                     SELinux support: no
                                 Smartcard support: no
                                         S/KEY support: no
                            TCP Wrappers support: no
                            MD5 password support: no
                                     libedit support: no
    Solaris process contract support: no
             IP address in $DISPLAY hack: no
                     Translate v4 in v6 hack: yes
                                    BSD Auth support: no
                            Random number source: OpenSSL internal ONLY

                            Host: i686-pc-linux-gnu
                    Compiler: gcc
        Compiler flags: -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -Wno-pointer-sign -std=gnu99
Preprocessor flags:
            Linker flags:
                 Libraries:     -lresolv -lcrypto -lutil -lz -lnsl    -lcrypt
5)编译制作
[root@wilson openssh-4.4p1]# make
conffile=`echo sshd_config.out | sed 's/.out$ //'`; \
  /bin/sed -e 's|/etc/ssh/ssh_prng_cmds|/usr/local/etc/ssh_prng_cmds|g' -e 's|/etc/ssh/ssh_config|/usr/local/etc/ssh_config|g' -e 's|/etc/ssh/ssh_known_hosts|/usr/local/etc/ssh_known_hosts|g' -e 's|/etc/ssh/sshd_config|/usr/local/etc/sshd_config|g' -e 's|/usr/libexec|/usr/local/libexec|g' -e 's|/etc/shosts.equiv|/usr/local/etc/shosts.equiv|g' -e 's|/etc/ssh/ssh_host_key|/usr/local/etc/ssh_host_key|g' -e 's|/etc/ssh/ssh_host_dsa_key|/usr/local/etc/ssh_host_dsa_key|g' -e 's|/etc/ssh/ssh_host_rsa_key|/usr/local/etc/ssh_host_rsa_key|g' -e 's|/var/run/sshd.pid|/var/run/sshd.pid|g' -e 's|/etc/ssh/moduli|/usr/local/etc/moduli|g' -e 's|/etc/ssh/sshrc|/usr/local/etc/sshrc|g' -e 's|/usr/X11R6/bin/xauth|/usr/bin/xauth|g' -e 's|/var/empty|/var/empty|g' -e 's|/usr/bin:/bin:/usr/sbin:/sbin|/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin|g' ./${conffile} > sshd_config.out
conffile=`echo ssh_config.out | sed 's/.out$ //'`; \
  /bin/sed -e 's|/etc/ssh/ssh_prng_cmds|/usr/local/etc/ssh_prng_cmds|g' -e 's|/etc/ssh/ssh_config|/usr/local/etc/ssh_config|g' -e 's|/etc/ssh/ssh_known_hosts|/usr/local/etc/ssh_known_hosts|g' -e 's|/etc/ssh/sshd_config|/usr/local/etc/sshd_config|g' -e 's|/usr/libexec|/usr/local/libexec|g' -e 's|/etc/shosts.equiv|/usr/local/etc/shosts.equiv|g' -e 's|/etc/ssh/ssh_host_key|/usr/local/etc/ssh_host_key|g' -e 's|/etc/ssh/ssh_host_dsa_key|/usr/local/etc/ssh_host_dsa_key|g' -e 's|/etc/ssh/ssh_host_rsa_key|/usr/local/etc/ssh_host_rsa_key|g' -e 's|/var/run/sshd.pid|/var/run/sshd.pid|g' -e 's|/etc/ssh/moduli|/usr/local/etc/moduli|g' -e 's|/etc/ssh/sshrc|/usr/local/etc/sshrc|g' -e 's|/usr/X11R6/bin/xauth|/usr/bin/xauth|g' -e 's|/var/empty|/var/empty|g' -e 's|/usr/bin:/bin:/usr/sbin:/sbin|/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin|g' ./${conffile} > ssh_config.out
conffile=`echo moduli.out | sed 's/.out$ //'`; \
  /bin/sed -e 's|/etc/ssh/ssh_prng_cmds|/usr/local/etc/ssh_prng_cmds|g' -e 's|/etc/ssh/ssh_config|/usr/local/etc/ssh_config|g' -e 's|/etc/ssh/ssh_known_hosts|/usr/local/etc/ssh_known_hosts|g' -e 's|/etc/ssh/sshd_config|/usr/local/etc/sshd_config|g' -e 's|/usr/libexec|/usr/local/libexec|g' -e 's|/etc/shosts.equiv|/usr/local/etc/shosts.equiv|g' -e 's|/etc/ssh/ssh_host_key|/usr/local/etc/ssh_host_key|g' -e 's|/etc/ssh/ssh_host_dsa_key|/usr/local/etc/ssh_host_dsa_key|g' -e 's|/etc/ssh/ssh_host_rsa_key|/usr/local/etc/ssh_host_rsa_key|g' -e 's|/var/run/sshd.pid|/var/run/sshd.pid|g' -e 's|/etc/ssh/moduli|/usr/local/etc/moduli|g' -e 's|/etc/ssh/sshrc|/usr/local/etc/sshrc|g' -e 's|/usr/X11R6/bin/xauth|/usr/bin/xauth|g' -e 's|/var/empty|/var/empty|g' -e 's|/usr/bin:/bin:/usr/sbin:/sbin|/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin|g' ./${conffile} > moduli.out
if test ! -z ""; then \
    /usr/bin/perl ./fixprogs ssh_prng_cmds ; \
  fi
if test "doc" = "cat"; then \
    manpage=./`echo scp.1.out | sed 's/\.[1-9]\.out$/\.0/'`; \
   else \
    manpage=./`echo scp.1.out | sed 's/\.out$ //'`; \
  fi; \
   if test "doc" = "man"; then \
    /bin/sed -e 's|/etc/ssh/ssh_prng_cmds|/usr/local/etc/ssh_prng_cmds|g' -e 's|/etc/ssh/ssh_config|/usr/local/etc/ssh_config|g' -e 's|/etc/ssh/ssh_known_hosts|/usr/local/etc/ssh_known_hosts|g' -e 's|/etc/ssh/sshd_config|/usr/local/etc/sshd_config|g' -e 's|/usr/libexec|/usr/local/libexec|g' -e 's|/etc/shosts.equiv|/usr/local/etc/shosts.equiv|g' -e 's|/etc/ssh/ssh_host_key|/usr/local/etc/ssh_host_key|g' -e 's|/etc/ssh/ssh_host_dsa_key|/usr/local/etc/ssh_host_dsa_key|g' -e 's|/etc/ssh/ssh_host_rsa_key|/usr/local/etc/ssh_host_rsa_key|g' -e 's|/var/run/sshd.pid|/var/run/sshd.pid|g' -e 's|/etc/ssh/moduli|/usr/local/etc/moduli|g' -e 's|/etc/ssh/sshrc|/usr/local/etc/sshrc|g' -e 's|/usr/X11R6/bin/xauth|/usr/bin/xauth|g' -e 's|/var/empty|/var/empty|g' -e 's|/usr/bin:/bin:/usr/sbin:/sbin|/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin|g' ${manpage} | gawk -f ./mdoc2man.awk > scp.1.out; \
   else \
    /bin/sed -e 's|/etc/ssh/ssh_prng_cmds|/usr/local/etc/ssh_prng_cmds|g' -e 's|/etc/ssh/ssh_config|/usr/local/etc/ssh_config|g' -e 's|/etc/ssh/ssh_known_hosts|/usr/local/etc/ssh_known_hosts|g' -e 's|/etc/ssh/sshd_config|/usr/local/etc/sshd_config|g' -e 's|/usr/libexec|/usr/local/libexec|g' -e 's|/etc/shosts.equiv|/usr/local/etc/shosts.equiv|g' -e 's|/etc/ssh/ssh_host_key|/usr/local/etc/ssh_host_key|g' -e 's|/etc/ssh/ssh_host_dsa_key|/usr/local/etc/ssh_host_dsa_key|g' -e 's|/etc/ssh/ssh_host_rsa_key|/usr/local/etc/ssh_host_rsa_key|g' -e 's|/var/run/sshd.pid|/var/run/sshd.pid|g' -e 's|/etc/ssh/moduli|/usr/local/etc/moduli|g' -e 's|/etc/ssh/sshrc|/usr/local/etc/sshrc|g' -e 's|/usr/X11R6/bin/xauth|/usr/bin/xauth|g' -e 's|/var/empty|/var/empty|g' -e 's|/usr/bin:/bin:/usr/sbin:/sbin|/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin|g' ${manpage} > scp.1.out; \
  fi
6)编译安装
[root@wilson openssh-4.4p1]# make install
if test ! -z ""; then \
    /usr/bin/perl ./fixprogs ssh_prng_cmds ; \
  fi
(cd openbsd-compat && make)
make[1]: Entering directory `/root/openssh-4.4p1/openbsd-compat'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/root/openssh-4.4p1/openbsd-compat'
(cd scard && make DESTDIR= install)
make[1]: Entering directory `/root/openssh-4.4p1/scard'
../mkinstalldirs /usr/local/share
/usr/bin/install -c -m 0644 ./Ssh.bin /usr/local/share/Ssh.bin
make[1]: Leaving directory `/root/openssh-4.4p1/scard'
./mkinstalldirs /usr/local/bin
./mkinstalldirs /usr/local/sbin
./mkinstalldirs /usr/local/share/man
./mkinstalldirs /usr/local/share
./mkinstalldirs /usr/local/share/man/man1
./mkinstalldirs /usr/local/share/man/man5
./mkinstalldirs /usr/local/share/man/man8
./mkinstalldirs /usr/local/libexec
(umask 022 ; ./mkinstalldirs /var/empty)
/usr/bin/install -c -m 0755 -s ssh /usr/local/bin/ssh
/usr/bin/install -c -m 0755 -s scp /usr/local/bin/scp
/usr/bin/install -c -m 0755 -s ssh-add /usr/local/bin/ssh-add
/usr/bin/install -c -m 0755 -s ssh-agent /usr/local/bin/ssh-agent
/usr/bin/install -c -m 0755 -s ssh-keygen /usr/local/bin/ssh-keygen
/usr/bin/install -c -m 0755 -s ssh-keyscan /usr/local/bin/ssh-keyscan
/usr/bin/install -c -m 0755 -s sshd /usr/local/sbin/sshd
if test ! -z "" ; then \
    /usr/bin/install -c -m 0755 -s ssh-rand-helper /usr/local/libexec/ssh-rand-helper ; \
  fi
/usr/bin/install -c -m 4711 -s ssh-keysign /usr/local/libexec/ssh-keysign
/usr/bin/install -c -m 0755 -s sftp /usr/local/bin/sftp
/usr/bin/install -c -m 0755 -s sftp-server /usr/local/libexec/sftp-server
/usr/bin/install -c -m 644 ssh.1.out /usr/local/share/man/man1/ssh.1
/usr/bin/install -c -m 644 scp.1.out /usr/local/share/man/man1/scp.1
/usr/bin/install -c -m 644 ssh-add.1.out /usr/local/share/man/man1/ssh-add.1
/usr/bin/install -c -m 644 ssh-agent.1.out /usr/local/share/man/man1/ssh-agent.1
/usr/bin/install -c -m 644 ssh-keygen.1.out /usr/local/share/man/man1/ssh-keygen.1
/usr/bin/install -c -m 644 ssh-keyscan.1.out /usr/local/share/man/man1/ssh-keyscan.1
/usr/bin/install -c -m 644 sshd_config.5.out /usr/local/share/man/man5/sshd_config.5
/usr/bin/install -c -m 644 ssh_config.5.out /usr/local/share/man/man5/ssh_config.5
/usr/bin/install -c -m 644 sshd.8.out /usr/local/share/man/man8/sshd.8
if [ ! -z "" ]; then \
    /usr/bin/install -c -m 644 ssh-rand-helper.8.out /usr/local/share/man/man8/ssh-rand-helper.8 ; \
  fi
/usr/bin/install -c -m 644 sftp.1.out /usr/local/share/man/man1/sftp.1
/usr/bin/install -c -m 644 sftp-server.8.out /usr/local/share/man/man8/sftp-server.8
/usr/bin/install -c -m 644 ssh-keysign.8.out /usr/local/share/man/man8/ssh-keysign.8
rm -f /usr/local/bin/slogin
ln -s ./ssh /usr/local/bin/slogin
rm -f /usr/local/share/man/man1/slogin.1
ln -s ./ssh.1 /usr/local/share/man/man1/slogin.1
if [ ! -d /usr/local/etc ]; then \
    ./mkinstalldirs /usr/local/etc; \
  fi
Generating public/ private rsa1 key pair.
Your identification has been saved in /usr/local/etc/ssh_host_key.
Your public key has been saved in /usr/local/etc/ssh_host_key.pub.
The key fingerprint is:
7e:56:3f:ac:75:f9:7c:86:ed:c6:82:27:90:9f:c3:18 root@wilson
Generating public/ private dsa key pair.
Your identification has been saved in /usr/local/etc/ssh_host_dsa_key.
Your public key has been saved in /usr/local/etc/ssh_host_dsa_key.pub.
The key fingerprint is:
b6:47:d4:a4:01:3c:e3:35:25:4f:03:6d:c2:b9:be:bd root@wilson
Generating public/ private rsa key pair.
Your identification has been saved in /usr/local/etc/ssh_host_rsa_key.
Your public key has been saved in /usr/local/etc/ssh_host_rsa_key.pub.
The key fingerprint is:
01:f4:e3:a3:ac:ae:db:a4:17:e2:6a:40:b6:84:53:7c root@wilson
/usr/local/sbin/sshd -t -f /usr/local/etc/sshd_config
[root@wilson openssh-4.4p1]#
7)查看现在编译版本
[root@wilson openssh-4.4p1]# ssh -V
OpenSSH_4.4p1, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
8)卸载编译安装
[root@wilson openssh-4.4p1]# make uninstall
rm -f /usr/local/bin/slogin
rm -f /usr/local/bin/ssh
rm -f /usr/local/bin/scp
rm -f /usr/local/bin/ssh-add
rm -f /usr/local/bin/ssh-agent
rm -f /usr/local/bin/ssh-keygen
rm -f /usr/local/bin/ssh-keyscan
rm -f /usr/local/bin/sftp
rm -f /usr/local/sbin/sshd
rm -r /usr/local/libexec/sftp-server
rm -f /usr/local/libexec/ssh-keysign
rm -f /usr/local/libexec/ssh-rand-helper
rm -f /usr/local/share/man/man1/ssh.1
rm -f /usr/local/share/man/man1/scp.1
rm -f /usr/local/share/man/man1/ssh-add.1
rm -f /usr/local/share/man/man1/ssh-agent.1
rm -f /usr/local/share/man/man1/ssh-keygen.1
rm -f /usr/local/share/man/man1/sftp.1
rm -f /usr/local/share/man/man1/ssh-keyscan.1
rm -f /usr/local/share/man/man8/sshd.8
rm -f /usr/local/share/man/man8/ssh-rand-helper.8
rm -f /usr/local/share/man/man8/sftp-server.8
rm -f /usr/local/share/man/man8/ssh-keysign.8
rm -f /usr/local/share/man/man1/slogin.1
[root@wilson openssh-4.4p1]#

卸载编译安装之后,无法查看到系统的版本情况。
[root@wilson openssh-4.4p1]# ssh -V
-bash: /usr/local/bin/ssh: No such file or directory
[root@wilson openssh-4.4p1]# ssh -V
-bash: /usr/local/bin/ssh: No such file or directory
但是退出session,然后再次登录可以查看卸载编译完成:
Connecting to 192.168.174.11:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.

*This is a priviate SSH service.You are not supported to be here.*
*Please leave immediately.*
Last login: Fri Oct 26 16:31:26 2012 from 192.168.174.1

[root@wilson ~]# ssh -V
OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
[root@wilson ~]# pwd
/root

至此,编译安装成功,从版本 OpenSSH_4.3p2升级到OpenSSH_4.4p1。(也可以卸载)

编译安装的简单说明:
tar.gz文件的安装,是属于自己编译源代码的方法。
多说一句,tar是把文件打成一个包,并不压缩;.gz是用gzip把打成包的.tar文件压缩,所以成了一个.tar.gz的文件。
一般软件包里会有一个叫configure的脚本文件,完成配置的任务。可以加很多参数,具体的可以运行./configure --help得到帮助的,比如./configure --prefix=xxx是设定软件安装到哪里。设置好参数,运行./configure,会生成makefile文件,这是你后面编译的基础。


接下来就要编译了,因为有makefile文件的存在,只需运行make就可完成编译。make是将读入所有由configure脚本程序建立的制作文件。这些制作文件会告诉make哪些文件需要被编译以及按照怎样的顺序对它们进行编译,因为可能会有上百个源程序文件。当make工作的时候,会在屏幕上显示出正在执行的每一个命令,以及与这个命令相关的全部参数。这些输出通常都是编译器的调用声明和所有传递给编译器的参数。如果编译器顺利地完成了工作,就不会出现什么错误信息。大多数编译器的错误信息十分清楚和明确,因此不用担心可能会漏掉一个错误。如果确实看到有一错误,也不用慌张。大多数错误信息并不反映出程序本身出现了一个问题,通常都是系统这里或者那里的问题。典型情况下,这些信息大多是因为文件访问权限不正确而产生的或者是因为文件没有找到。

完成编译,之后就是安装软件了。只需make install就好,这个命令将启动安装脚本程序。因make命令会在执行每一个命令的时候把它显示出来,所以将会看到许许多多的文字在眼前。如没有看到什么错误信息,就说明这个软件包安装完成。

反安装就是make uninstall了,方法和make install一样。

./configure --help
[root@wilson openssh-5.0p1]# ./configure --help
`configure' configures OpenSSH Portable to adapt to many kinds of systems.

Usage: ./configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.    See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

Configuration:
    -h, --help                            display this help and exit
            --help= short                display options specific to this package
            --help=recursive        display the short help of all the included packages
    -V, --version                     display version information and exit
    -q, --quiet, --silent     do not print `checking...' messages
            --cache-file=FILE     cache test results in FILE [disabled]
    -C, --config-cache            alias for `--cache-file=config.cache'
    -n, --no-create                 do not create output files
            --srcdir=DIR                find the sources in DIR [configure dir or `..']

Installation directories:
    --prefix=PREFIX                 install architecture-independent files in PREFIX
         [/usr/local]
    --exec-prefix=EPREFIX     install architecture-dependent files in EPREFIX
         [PREFIX]

By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc.    You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.

For better control, use the options below.

Fine tuning of the installation directories:
    --bindir=DIR                     user executables [EPREFIX/bin]
    --sbindir=DIR                    system admin executables [EPREFIX/sbin]
    --libexecdir=DIR             program executables [EPREFIX/libexec]
    --sysconfdir=DIR             read-only single-machine data [PREFIX/etc]
    --sharedstatedir=DIR     modifiable architecture-independent data [PREFIX/com]
    --localstatedir=DIR        modifiable single-machine data [PREFIX/var]
    --libdir=DIR                     object code libraries [EPREFIX/lib]
    --includedir=DIR             C header files [PREFIX/include]
    --oldincludedir=DIR        C header files for non-gcc [/usr/include]
    --datarootdir=DIR            read-only arch.-independent data root [PREFIX/share]
    --datadir=DIR                    read-only architecture-independent data [DATAROOTDIR]
    --infodir=DIR                    info documentation [DATAROOTDIR/info]
    --localedir=DIR                locale-dependent data [DATAROOTDIR/locale]
    --mandir=DIR                     man documentation [DATAROOTDIR/man]
    --docdir=DIR                     documentation root [DATAROOTDIR/doc/openssh]
    --htmldir=DIR                    html documentation [DOCDIR]
    --dvidir=DIR                     dvi documentation [DOCDIR]
    --pdfdir=DIR                     pdf documentation [DOCDIR]
    --psdir=DIR                        ps documentation [DOCDIR]

System types:
    --build=BUILD         configure for building on BUILD [guessed]
    --host=HOST             cross-compile to build programs to run on HOST [BUILD]

Optional Features:
    --disable-FEATURE             do not include FEATURE (same as --enable-FEATURE=no)
    --enable-FEATURE[=ARG]    include FEATURE [ARG=yes]
    --disable-largefile         omit support for large files
    --disable-strip                 Disable calling strip(1) on install
    --disable-etc- default-login Disable using PATH from /etc/ default/login no
    --disable-lastlog             disable use of lastlog even if detected no
    --disable-utmp                    disable use of utmp even if detected no
    --disable-utmpx                 disable use of utmpx even if detected no
    --disable-wtmp                    disable use of wtmp even if detected no
    --disable-wtmpx                 disable use of wtmpx even if detected no
    --disable-libutil             disable use of libutil (login() etc.) no
    --disable-pututline         disable use of pututline() etc. (uwtmp) no
    --disable-pututxline        disable use of pututxline() etc. (uwtmpx) no

Optional Packages:
    --with-PACKAGE[=ARG]        use PACKAGE [ARG=yes]
    --without-PACKAGE             do not use PACKAGE (same as --with-PACKAGE=no)
    --without-stackprotect    Don't use compiler's stack protection
    --without-rpath                 Disable auto-added -R linker paths
    --with-cflags                     Specify additional flags to pass to compiler
    --with-cppflags                 Specify additional flags to pass to preprocessor
    --with-ldflags                    Specify additional flags to pass to linker
    --with-libs                         Specify additional libraries to link with
    --with-Werror                     Build main code with -Werror
    --with-solaris-contracts Enable Solaris process contracts (experimental)
    --with-osfsia                     Enable Digital Unix SIA
    --with-zlib=PATH                Use zlib in PATH
    --without-zlib-version-check Disable zlib version check
    --with-skey[=PATH]            Enable S/Key support (optionally in PATH)
    --with-tcp-wrappers[=PATH] Enable tcpwrappers support (optionally in PATH)
    --with-libedit[=PATH]     Enable libedit support for sftp
    --with-audit=module         Enable EXPERIMENTAL audit support (modules=debug,bsm)
    --with-ssl-dir=PATH         Specify path to OpenSSL installation
    --without-openssl-header-check Disable OpenSSL version consistency check
    --with-ssl-engine             Enable OpenSSL (hardware) ENGINE support
    --with-pam                            Enable PAM support
    --with-rand-helper            Use subprocess to gather strong randomness
    --with-prngd-port=PORT    read entropy from PRNGD/EGD TCP localhost:PORT
    --with-prngd-socket=FILE read entropy from PRNGD/EGD socket FILE ( default=/var/run/egd-pool)
    --with-entropy-timeout    Specify entropy gathering command timeout (msec)
    --with-privsep-user=user Specify non-privileged user for privilege separation
    --with-sectok                     Enable smartcard support using libsectok
    --with-opensc[=PFX]         Enable smartcard support using OpenSC (optionally in PATH)
    --with-selinux                    Enable SELinux support
    --with-kerberos5=PATH     Enable Kerberos 5 support
    --with-privsep-path=xxx Path for privilege separation chroot ( default=/var/empty)
    --with-xauth=PATH             Specify path to xauth program
    --with-mantype=man|cat|doc    Set man page type
    --with-md5-passwords        Enable use of MD5 passwords
    --without-shadow                Disable shadow password support
    --with-ipaddr-display     Use ip address instead of hostname in \$DISPLAY
    --with- default-path=        Specify default \$PATH environment for server
    --with-superuser-path=    Specify different path for super-user
    --with-4in6                         Check for and convert IPv4 in IPv6 mapped addresses
    --with-bsd-auth                 Enable BSD auth support
    --with-pid-dir=PATH         Specify location of ssh.pid file
    --with-lastlog=FILE|DIR specify lastlog location common locations

Some influential environment variables:
    CC                    C compiler command
    CFLAGS            C compiler flags
    LDFLAGS         linker flags, e.g. -L if you have libraries in a
                            nonstandard directory
    LIBS                libraries to pass to the linker, e.g. -l
    CPPFLAGS        C/C++/Objective C preprocessor flags, e.g. -I if
                            you have headers in a nonstandard directory
    CPP                 C preprocessor

Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.

Report bugs to .