编译openssh报错configure: error: *** libpam missing
时间: 2023-07-23 21:05:58 浏览: 183
当编译 OpenSSH 时出现 "configure: error: *** libpam missing" 错误时,表示缺少 libpam(Pluggable Authentication Modules)库。
要解决此错误,您可以按照以下步骤进行操作:
1. 在 Ubuntu/Debian 系统上,可以使用以下命令安装 libpam 开发包:
```
sudo apt install libpam0g-dev
```
在其他 Linux 发行版上,您可能需要使用相应的包管理器来安装 libpam 的开发包。
2. 如果已经安装了 libpam 开发包,但仍然出现错误,请确保 libpam 的头文件位于正确的位置。默认情况下,它们应该位于 `/usr/include/security` 目录下。您可以执行以下命令进行检查:
```
ls /usr/include/security
```
如果该目录不存在或者文件不完整,您可能需要重新安装 libpam 包或者手动修复安装。
3. 在执行 OpenSSH 的 `configure` 脚本之前,尝试清除之前的配置缓存。执行以下命令:
```
make distclean
```
然后重新运行 `configure`。
尝试上述解决方法后,再次运行 `configure` 脚本进行编译,应该可以解决 "libpam missing" 错误。
相关问题
编译openssh报错configure: error: OpenSSL version header not found.如何解决
当编译 OpenSSH 时出现 "configure: error: OpenSSL version header not found" 错误时,这表示 OpenSSL 的版本头文件未被找到。您可以尝试以下解决方法:
1. 确保已正确安装了 OpenSSL 开发包。在 Ubuntu/Debian 系统上,可以使用以下命令安装:
```
sudo apt install libssl-dev
```
在其他 Linux 发行版上,您可能需要使用相应的包管理器来安装 OpenSSL 的开发包。
2. 如果已经安装了 OpenSSL 开发包,但仍然出现错误,请确保 OpenSSL 的版本头文件位于正确的位置。默认情况下,它们应该位于 `/usr/include/openssl` 目录下。您可以执行以下命令进行检查:
```
ls /usr/include/openssl
```
如果该目录不存在或者文件不完整,您可能需要重新安装 OpenSSL 包或者手动修复安装。
3. 如果您使用的是自定义的 OpenSSL 安装路径,可以通过设置 `CPPFLAGS` 环境变量来指定 OpenSSL 头文件的位置。执行以下命令:
```
export CPPFLAGS="-I/path/to/openssl/include"
```
将 `/path/to/openssl/include` 替换为实际的 OpenSSL 头文件所在的路径。
4. 在执行 OpenSSH 的 `configure` 脚本之前,尝试清除之前的配置缓存。执行以下命令:
```
make distclean
```
然后重新运行 `configure`。
尝试上述解决方法后,再次运行 `configure` 脚本进行编译,应该可以解决 "OpenSSL version header not found" 错误。
configure: error: *** working libcrypto not found, check config.log
configure: error: *** working libcrypto not found, check config.log的报错是因为在编译openssh-8.0p1工具时,找不到libcrypto库。根据config.log文件的分析,可以得出报错原因是在生成静态库或者动态库时没有添加-fPIC选项。而在openssl-1.0.2r下编译出来的libcrypto.a是一个静态库,因此无法使用。要解决这个问题,需要在编译openssl的库文件时添加-fPIC选项。
-fPIC 全称是Position Independent Code,用于生成位置无关代码,代码无绝对跳转,都是相对跳转。所以,在编译openssl的库文件时,需要添加-fPIC选项,可以通过以下命令进行编译:
# ./Configure --prefix=/mnt/more/loongson/sshwork/openssl-1.0.2r os/compiler:mipsel-linux-gcc -fPIC
相关问题:
1. 在编译openssh-8.0p1工具时,出现configure:error:*** working libcrypto