由于找不到OpenSSL库,无法编译openssh

时间:2018-01-29 01:58:49

标签: openssl openssh

我基于16.04,尝试从源代码安装openssh

sudo apt install -y build-essential libssl-dev zlib1g-dev
wget "http://mirrors.evowise.com/pub/OpenBSD/OpenSSH/portable/openssh-7.4p1.tar.gz"
tar xfz openssh-7.4p1.tar.gz
cd openssh-7.4p1
./configure

尝试配置时,我收到以下错误消息:

checking OpenSSL header version... 10101000 (OpenSSL 1.1.1-dev  xx XXX xxxx)
checking OpenSSL library version... not found
configure: error: OpenSSL library not found.

检查路径 / usr / local / ssl #ls 显示以下文件

certs ct_log_list.cnf.dist openssl.cnf private ct_log_list.cnf misc openssl.cnf.dist

我不知道为什么在我安装了libssl库时它找不到openssl库。

如何解决它

1 个答案:

答案 0 :(得分:0)

请按照以下步骤交叉编译openSSH:

请确保已将openssl编译并安装在特定目录(例如/ opt / usr / openssl)中,并且该目录具有bin,lib,include等子目录,其中包含openssl二进制文件,库和头文件。

从构建服务器linux机器上打开以下命令,openssh工作目录

bash-3.2 $ pwd

/home/xxxxxx/projects/openssh/openssh-8.2p1

bash-3.2 $ CC = ppc_6xx-gcc PATH = $ PATH:/ opt / eldk / ppc-v42-1 / usr / bin ./configure --with-security-key-builtin --with-md5-passwords --with-ssl-dir = / opt / usr / openssl --prefix = / opt / usr / openssh

...

...

...

主机:x86_64-pc-linux-gnu 编译器:ppc_6xx-gcc 编译器标志:-g -O2 -pipe -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -Wformat-security -Wno-pointer-sign -fno-strict-aliasing -D_FORTIFY_SOURCE = 2 -ftrapv -fno-builtin-memset- fstack-protector-all -std = gnu99 -fPIE 预处理器标志:-I / opt / usr / include -D_XOPEN_SOURCE = 600 -D_BSD_SOURCE -D_DEFAULT_SOURCE 链接器标志:-L / opt / ust / openssl / lib -Wl,-z,retpolineplt -Wl,-z,relro -Wl,-z,现在-Wl,-z,noexecstack -fstack-protector-all -pie 库:-lresolv -lcrypto -lrt -ldl -lutil -lz -lcrypt

bash-3.2 $

bash-3.2 $ make