在rshd.c源代码中缺lesspam_appl.h和pam_misc.h

我正在使用一个centOS 5.5操作系统

它显示/security/pam_appl.h和/security/misc.h文件丢失的错误。

其实我的rshd.c不加载PAM模块,可能是通过把这个库,它帮助我工作我的rshd罚款。 这就是为什么我发布这个问题。

错误:-

rshd.c:90:31: error: security/pam_appl.h: No such file or directory rshd.c:91:31: error: security/pam_misc.h: No such file or directory 

我search了很多,但没有得到任何有用的rpm给这些文件。

一些链接在这里 。 但不适合centOS。

帮我。 告诉我怎样才能克服这个问题。

编辑否1

你的第三个链接似乎有用。 当我尝试安装pam-devel时,显示一些错误。

当我跑步

 ./configure --prefix=/usr \ --sysconfdir=/etc \ --docdir=/usr/share/doc/Linux-PAM-1.1.6 \ --disable-nis && make 

它检查一些variables,然后它使对象文件,但最后显示,

 make[3]: *** [pam_xauth.lo] Error 1 make[3]: Leaving directory `~/Linux-PAM-1.1.6/modules/pam_xauth' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `~/Linux-PAM-1.1.6/modules' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `~/Linux-PAM-1.1.6' make: *** [all] Error 2 

编辑2号

当我遵循你的命令时,它最后显示了下面的错误。

这个错误来了,当我运行make && make install

 pam_xauth.c:64:27: error: selinux/label.h: No such file or directory pam_xauth.c: In function âpam_sm_open_sessionâ: pam_xauth.c:616: error: âSELABEL_CTX_FILEâ undeclared (first use in this function) pam_xauth.c:616: error: (Each undeclared identifier is reported only once pam_xauth.c:616: error: for each function it appears in.) pam_xauth.c:616: warning: initialization makes pointer from integer without a cast make[3]: *** [pam_xauth.lo] Error 1 make[3]: Leaving directory `/root/Linux-PAM-1.1.6/modules/pam_xauth' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/root/Linux-PAM-1.1.6/modules' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/Linux-PAM-1.1.6' make: *** [all] Error 2 

Solutions Collecting From Web of "在rshd.c源代码中缺lesspam_appl.h和pam_misc.h"

目前我还没有CentOS,但似乎这是一个普遍的问题。 看到这里的信息,建议你安装pam-devel,这样你就不必从源代码构建:

 yum install pam-devel 

似乎每次我找到一个网站的问题是相同的你的修复是安装这个。 我现在正在下载CentOS 5.5来尝试一下,但是你是否试过运行那个命令?

如果你确实安装了它,它仍然没有找到头文件,我会试试这个:

 cd / sudo find . -name "pam_appl.h" sudo find . -name "pam_misc.h" 

有可能他们已经安装了,没有进入你的标准包含路径,或者没有进入security/目录,在这种情况下,你需要移动它们或者改变你的代码中包含头的方式。

注意 sudo命令,你必须输入你的密码。

您需要在这里为CentOS提供pam-devel的rpm。 或者,您可以从这里下载pam并在本地安装。

编辑:要编译它,这在我的系统上工作正常:

 wget http://linux-pam.org/library/Linux-PAM-1.1.6.tar.bz2 tar xvjf Linux-PAM-1.1.6.tar.bz2 cd Linux-PAM-1.1.6/ ./configure --prefix=$HOME/local make && make install 

如果没有,请报告编译器错误。

对于那些通过搜索引擎找到的人来说,以下在CentOS 7上为我工作:

 yum install pam-devel 

如果有人正在寻找debian / ubuntu,试试这个sudo apt-get install libpam0g-dev