Apache 源代码中的httpd生成缺少asn1.h

Apache 源代码中的httpd生成缺少asn1.h,apache,openssl,Apache,Openssl,我一直在尝试从源代码构建httpd-2.4.43,并包括OpenSSL-fips-2.0.16 然而,我在httpd的构建过程中遇到了一个错误。见下文 make[2]: Entering directory `/root/httpd/httpd-2.4.43/support' /root/httpd/httpd-2.4.43/srclib/apr/libtool --silent --mode=compile gcc -std=gnu99 -I/opt/openssl-fips-2.0.16/i

我一直在尝试从源代码构建
httpd-2.4.43
,并包括
OpenSSL-fips-2.0.16

然而,我在httpd的构建过程中遇到了一个错误。见下文

make[2]: Entering directory `/root/httpd/httpd-2.4.43/support'
/root/httpd/httpd-2.4.43/srclib/apr/libtool --silent --mode=compile gcc -std=gnu99 -I/opt/openssl-fips-2.0.16/include  -g -O2 -pthread      -DLINUX -D_REENTRANT -D_GNU_SOURCE   \
      -I. -I/root/httpd/httpd-2.4.43/os/unix -I/root/httpd/httpd-2.4.43/include -I/root/httpd/httpd-2.4.43/srclib/apr/include -I/root/httpd/httpd-2.4.43/srclib/apr-util/include -I/usr/local/include -I/root/httpd/httpd-2.4.43/modules/aaa -I/root/httpd/httpd-2.4.43/modules/cache -I/root/httpd/httpd-2.4.43/modules/core -I/root/httpd/httpd-2.4.43/modules/database -I/root/httpd/httpd-2.4.43/modules/filters -I/root/httpd/httpd-2.4.43/modules/ldap -I/root/httpd/httpd-2.4.43/server -I/root/httpd/httpd-2.4.43/modules/loggers -I/root/httpd/httpd-2.4.43/modules/lua -I/root/httpd/httpd-2.4.43/modules/proxy -I/root/httpd/httpd-2.4.43/modules/http2 -I/root/httpd/httpd-2.4.43/modules/session -I/root/httpd/httpd-2.4.43/modules/ssl -I/root/httpd/httpd-2.4.43/modules/test -I/root/httpd/httpd-2.4.43/server -I/root/httpd/httpd-2.4.43/modules/md -I/root/httpd/httpd-2.4.43/modules/arch/unix -I/root/httpd/httpd-2.4.43/modules/dav/main -I/root/httpd/httpd-2.4.43/modules/generators -I/root/httpd/httpd-2.4.43/modules/mappers  -prefer-non-pic -static -c ab.c && touch ab.lo
In file included from ab.c:161:0:
/opt/openssl-fips-2.0.16/include/openssl/rsa.h:62:26: fatal error: openssl/asn1.h: No such file or directory
 #include <openssl/asn1.h>
                          ^
compilation terminated.
make[2]: *** [ab.lo] Error 1
make[2]:进入目录“/root/httpd/httpd-2.4.43/support”
/root/httpd/httpd-2.4.43/srclib/apr/libtool--silent--mode=compilegcc-std=gnu99-I/opt/openssl-fips-2.0.16/include-g-O2-pthread-DLINUX-D_可重入-D_GNU___源代码\
-I.-I/root/httpd/httpd-2.4.43/os/unix-I/root/httpd/httpd-2.4.43/include-I/root/httpd/httpd-2.4.43/srclib/apr/include-I/root/httpd/httpd-2.4.43/srclib/apr-util/include-I/usr/local/include-I/root/httpd/httpd-2.4.43/modules/aaa-I/root/httpd/httpd-2.4.43/modules/cache-I/httpd-4.43-I/root/httpd/httpd-2.4.43/modules/database-I/root/httpd/httpd-2.4.43/modules/filters-I/root/httpd/httpd-2.4.43/modules/ldap-I/root/httpd/httpd-2.4.43/server-I/root/httpd/httpd-2.4.43/modules/loggers-I/root/httpd/httpd-2.4.43/modules/lua-I/root/httpd/httpd/2.43/httpd/proxy-2.43/httpd/modules-I/root/httpd/httpd-2.4.43/modules/session-I/root/httpd/httpd-2.4.43/modules/ssl-I/root/httpd/httpd-2.4.43/modules/test-I/root/httpd/httpd-2.4.43/server-I/root/httpd/httpd-2.4.43/modules/md-I/root/httpd/httpd-2.4.43/modules/modules/arch/unix-I/root/httpd/httpd/2.43/httpd-2.43/main-I/root/httpd/httpd-2.4.43/modules/mappers-首选非pic-静态-c ab.c和触摸ab.lo
在ab.c:161:0中包含的文件中:
/opt/openssl-fips-2.0.16/include/openssl/rsa.h:62:26:致命错误:openssl/asn1.h:没有这样的文件或目录
#包括
^
编译终止。
制造[2]:***[ab.lo]错误1
上面的错误消息指向缺少
asn1.h

我不知道在哪里可以找到它。也许从源代码构建OpenSSL缺少一个过程? 在从源代码构建
OpenSSL
时,我觉得我错过了一些东西


请为我指出正确的方向。

您必须安装OpenSSL开发包,该包可在所有现代Linux发行版的标准存储库中获得

在Debian、Ubuntu或其衍生物上安装OpenSSL开发包:

sudo apt-get install libssl-dev
要在Fedora、CentOS或RHEL上安装OpenSSL开发包,请执行以下操作:

sudo yum install openssl-devel 

修好了。显然,当我搜索资源时,我发现了asn1.h问题,不知道rsa.h部分包含asn1.h

因此发现这是由于在构建openssl时*ssl-devel依赖关系造成的

因此,请在您的构建环境中安装*ssl-devel
openssl-devel
用于RHEL/Fedora 用于Debian的libssl-devel

然后重建
OpenSSL
然后
httpd