ソースから OpenSSH 7.9p1をビルドしようとしていますが、たとえばssh-agent
、ssh-keygen
、を削除する(または含めない)方法が見つかりません。 scp
、sftp
、sshd
など–もちろん、ssh
コマンドが機能するためにこれらのいずれも必要ないと仮定します。
理想的には、クライアントであるssh
コマンドのみが必要ですが、繰り返しになりますが、他にどのような部分が必要かわかりません。ビルド/インストールされるもののほとんどは、クライアントではなくサーバーによって使用されると思います。
はい、提供されているデフォルトのビルドシステムでこれを行うことができます。
提供された_./configure
_スクリプトを実行して生成されたMakefile
を見ると、デフォルトの(最初の)ターゲットが
_TARGETS=ssh$(EXEEXT) sshd$(EXEEXT) ssh-add$(EXEEXT) ssh-keygen$(EXEEXT) ssh-keyscan${EXEEXT} ssh-keysign${EXEEXT} ssh-pkcs11-helper$(EXEEXT) ssh-agent$(EXEEXT) scp$(EXEEXT) sftp-server$(EXEEXT) sftp$(EXEEXT)
_
(Unixライクなシステムの場合、$(EXEEXT)
は空である必要があります)。それぞれに独自のビルドターゲット/ルールがあるため、たとえば次のことができます。
_make ssh
_
クライアントのみを作成します。
例.
_$ make ssh
<snip>
$ find . -type f -executable -newermt yesterday
./config.status
./ssh
$ ./ssh -V
OpenSSH_7.9p1, OpenSSL 1.1.0g 2 Nov 2017
_