apache源码编译时报错ssl_engine_init.c:546: error: 'STACK' undeclared (first use in this function)

简介:

操作系统:centos6.4 X86_64

apache版本:httpd-2.2.6

openssl版本:openssl-1.0.1e


源码编译apache时报如下错误:

ssl_engine_init.c: In function 'ssl_init_ctx_protocol':
ssl_engine_init.c:390: warning: assignment discards qualifiers from pointer target type
ssl_engine_init.c:396: warning: assignment discards qualifiers from pointer target type
ssl_engine_init.c: In function 'ssl_init_ctx_verify':
ssl_engine_init.c:546: error: 'STACK' undeclared (first use in this function)
ssl_engine_init.c:546: error: (Each undeclared identifier is reported only once
ssl_engine_init.c:546: error: for each function it appears in.)
ssl_engine_init.c:546: error: expected expression before ')' token
ssl_engine_init.c: In function 'ssl_init_FindCAList':
ssl_engine_init.c:1126: warning: pointer type mismatch in conditional expression
make[4]: *** [ssl_engine_init.slo] 错误 1
make[4]: Leaving directory `/software/httpd-2.2.6/modules/ssl'
make[3]: *** [shared-build-recursive] 错误 1
make[3]: Leaving directory `/software/httpd-2.2.6/modules/ssl'
make[2]: *** [shared-build-recursive] 错误 1
make[2]: Leaving directory `/software/httpd-2.2.6/modules'
make[1]: *** [shared-build-recursive] 错误 1
make[1]: Leaving directory `/software/httpd-2.2.6'
make: *** [all-recursive] 错误 1


原因分析:apache2.x  和openssl1.0.x不兼容导致的

解决方法:安装openssl0.9.8e

安装步骤:

1
2
3
4
5
6
7
8
9
10
11
12
# tar zxvf openssl-0.9.8e.tar.gz
# cd openssl-0.9.8e
# ./config shared zlib
# make 
# make test
# make install
# mv /usr/bin/openssl /usr/bin/openssl.OFF
# mv /usr/include/openssl /usr/include/openssl.OFF
# rm -rf /usr/lib/libssl.so
# ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
# ln -s /usr/local/ssl/include/openssl /usr/include/openssl
# ln -sv /usr/local/ssl/lib/libssl.so.0.9.8  /usr/lib/libssl.so


 

配置库文件搜索路径

1
2
# echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
# ldconfig -v


 

检测安装结果

1
# openssl version


OpenSSL 0.9.8e 23 Feb 2007


安装成功!


重新编译apache,编译时参数加上 --enable-ssl --with-ssl=/usr/local/ssl


问题解决。











本文转自月魔zhi蕾51CTO博客,原文链接:  http://blog.51cto.com/308107405/1537541 ,如需转载请自行联系原作者
相关文章
org.apache.ibatis.exceptions.PersistenceException: ### Error querying database.
org.apache.ibatis.exceptions.PersistenceException: ### Error querying database.
|
3月前
|
消息中间件 前端开发 Kafka
【Azure 事件中心】使用Apache Flink 连接 Event Hubs 出错 Kafka error: No resolvable bootstrap urls
【Azure 事件中心】使用Apache Flink 连接 Event Hubs 出错 Kafka error: No resolvable bootstrap urls
|
6月前
|
Java 数据库连接 mybatis
解决Error querying database. Cause: org.apache.ibatis.executor.ExecutorException: No constructor found
解决Error querying database. Cause: org.apache.ibatis.executor.ExecutorException: No constructor found
294 1
|
3月前
|
Python
【Azure 应用服务】Azure Function HTTP Trigger 遇见奇妙的500 Internal Server Error: Failed to forward request to http://169.254.130.x
【Azure 应用服务】Azure Function HTTP Trigger 遇见奇妙的500 Internal Server Error: Failed to forward request to http://169.254.130.x
|
3月前
【Azure 应用服务】Azure Function 启用 Managed Identity后, Powershell Funciton出现 ERROR: ManagedIdentityCredential authentication failed
【Azure 应用服务】Azure Function 启用 Managed Identity后, Powershell Funciton出现 ERROR: ManagedIdentityCredential authentication failed
|
3月前
|
Android开发
解决Android、Flutter编译时Gradle报错:javax.net.ssl.SSLException: Connection reset
解决Android、Flutter编译时Gradle报错:javax.net.ssl.SSLException: Connection reset
357 0
|
4月前
|
前端开发
Error in created hook: “TypeError: _test.default is not a function
Error in created hook: “TypeError: _test.default is not a function
|
5月前
|
Oracle 关系型数据库 Shell
实时计算 Flink版操作报错合集之遇到报错:Error: Could not find or load main class org.apache.flink.cdc.cli.CliFrontend,是什么导致的
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
189 0
|
6月前
|
Java API Apache
【Apache ShenYu源码】看看贡献者如何实现支持提醒通知设计
在阅读中,还发现了有个html文件忘记加了开源协议,我们提下PR修复下,又收获了一次开源贡献!!PR提交戳这。
【Apache ShenYu源码】看看贡献者如何实现支持提醒通知设计
|
6月前
|
Go
Error: Package awesomeProject contains more than one main function Consider using File kind instead
Goland编辑器运行时出现“edit configuration”窗口,阻碍代码执行。解决方法:右键点击源文件运行。问题源于Go语言不支持函数重载,同一包内不能有两个同名函数,导致多入口冲突。初学者在main包中使用了多个Go源文件,应改为仅有一个源码文件来避免此问题。
61 0

推荐镜像

更多