apache 在 加载openssl 模块时出现 “/usr/local/ssl/lib/libssl.a: could not read symbols: Bad value”错误解决方案

正式环境:

系统:Red Hat Enterprise Linux Server release 5.6 (Tikanga)

内核:2.6.18-238.31.1.el5

位数:64

测试环境:

系统:CentOS release 5.8 (Final)

内核:2.6.18-53.el5

位数: 32

相关软件版本及下载地址

1.apr: http://labs.mop.com/apache-mirror//apr/apr-1.4.6.tar.gz

2.apr-util:http://labs.mop.com/apache-mirror//apr/apr-util-1.4.1.tar.gz

3.pcre:http://cdnetworks-kr-2.dl.sourceforge.net/project/pcre/pcre/8.30/pcre-8.30.zip

4.openssl:http://www.openssl.org/source/openssl-1.0.1c.tar.gz

5.apache:http://labs.mop.com/apache-mirror/httpd/httpd-2.4.2.tar.gz

(apr,apr-util,pcre安装在此略过)

测试环境openssl及apache安装方法:

openssl 编译:

./config ; make; make install

apache 编译:

./configure --prefix=/opt/xyz/apache2.4.2_resin4.0.29/apache2  --enable-mods-shared=ALL --enable-so  --with-apr=/usr/local/apr -with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-ssl --with-ssl=/usr/local/ssl

正式环境openssl及apache安装方法:

openssl编译:

如果按照测试环境编译,提示如下错误(google出来的结果基本就是说bug之类的,在此顺道鄙视百度一下,连个类似的检索都没有。)

/usr/bin/ld: /usr/local/ssl/lib/libssl.a(s3_srvr.o): relocation R_X86_64_32 against `a local symbol‘ can not be used when making a shared object; recompile with -fPIC

/usr/local/ssl/lib/libssl.a: could not read symbols: Bad value

collect2: ld returned 1 exit status

make[4]: *** [mod_ssl.la] Error 1

make[4]: Leaving directory `/opt/xyz/httpd-2.4.2/modules/ssl‘

make[3]: *** [shared-build-recursive] Error 1

make[3]: Leaving directory `/opt/xyz/httpd-2.4.2/modules/ssl‘

make[2]: *** [shared-build-recursive] Error 1

make[2]: Leaving directory `/opt/xyz/httpd-2.4.2/modules‘

make[1]: *** [shared-build-recursive] Error 1

make[1]: Leaving directory `/opt/xyz/httpd-2.4.2‘

make: *** [all-recursive] Error 1

这段错误说明ssl方面的错误,需要重新编译,并添加 -fPIC?。既然如此,就按照要求来呗,找到openssl的源文件,重新编译,./config -fPIC,make clean 无数遍,最后发现还是提示如上错误。

这下坑爹了,干脆一切删了重来。

64位下成功解决方法:

openssl编译:

./config --prefix=${destination_dir} -fPIC no-gost no-shared no-zlib

make depend ; make install

apache 编译方法照旧。

时间: 2024-09-28 16:17:34

apache 在 加载openssl 模块时出现 “/usr/local/ssl/lib/libssl.a: could not read symbols: Bad value”错误解决方案的相关文章

mkinitrd --preload预加载raid模块

mkinitrd可建立映像文件,以供Linux开机时载入ramdisk 如何应用 -f 若指定的映像问家名称与现有文件重复,则覆盖现有的文件. -v 执行时显示详细的信息. --omit-scsi-modules 不要载入SCSI模块. --preload=<模块名称> 指定要载入的模块. --with=<模块名称> 指定要载入的模块. --version 显示版本信息. 目前遇到的瓶颈是如何正确的将raid驱动模块加载到内存中,当linux开机的过程中识别到 硬盘正确的挂载. m

使PHP加载Mbstring模块。

windows Server2003环境 首先用phpinfo测试页面看一下有没有装载mbstring,如果没有,尝试将php_mbstring.dll复制到%windows%目录下.然后在php.ini配置文件中将扩展extension=php_mbstring.dll前面的分号去除后重启下web服务就应该可以了. Linux环境:添加mbstring扩展(例如:php版本5.1.6,安装目录/usr/local/php,源代码目录/usr/software/php5.1.6):1.用cd命令

VirtualBox 4.3.18 启动虚拟机时显示不能加载 R3模块并退出故障解决一例

VirtualBox 升级到 4.3.1x后一直问题不断.搜了些资料,发现这货从最近的某个版本开始,为了安全,要校验进程完整性,那些在运行时要注入Virtualbox进程的模块都要进行校验.于是乎出现了杀软不兼容等等故障.最近刚卸载了杀软解决了杀软不兼容,又出现不能加载R3模块的错误:Unable to load R3 module C:\Program Files\Oracle\VirtualBox/VBoxDD.DLL (VBoxDD): GetLastError=126 (VERR_MOD

定义页面加载和导航时要执行的函数/自定义事件

/** * Copyright 2017 Google Inc. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www

有效解决Android加载大图片时内存溢出的问题

首先解析一下基本的知识: 位图模式,bitmap颜色位数是1位 灰度模式,bitmap颜色位数是8位,和256色一样 RGB模式,bitmap颜色位数是24位 在RGB模式下,一个像素对应的是红.绿.蓝三个字节 CMYK模式,bitmap颜色位数是32位  在CMYK模式下,一个像素对应的是青.品.黄.黑四个字节 图像文件的字节数(Byte) = 图像分辨率*颜色深度/8(bit/8) 例如:一幅640*480图像分辨率.RGB色一般为24位真彩色,图像未经压缩的数据容量为:640X480X24

archlinux 加载loop模块,且设定loop设备个数

如果loop模块没有编译进内核就要先加载loop模块 modprobe loop 然后更改/etc/modprobe.d/modprobe.conf(有些文章写是在/etc/modprobe.conf,但是我试验是在此目录下) options loop max_loop=64 之后就可以重启系统,然后执行 modprobe loop 我们就可以看到loop设备增加为64个了.

NGINX 加载动态模块(NGINX 1.9.11开始增加加载动态模块支持)

NGINX 1.9.11开始增加加载动态模块支持,从此不再需要替换nginx文件即可增加第三方扩展.目前官方只有几个模块支持动态加载,第三方模块需要升级支持才可编译成模块. [email protected]:~/nginx-1.12.0$ ./configure --help | grep dynamic --with-http_xslt_module=dynamic enable dynamic ngx_http_xslt_module --with-http_image_filter_mo

图片--Android有效解决加载大图片时内存溢出的问题

Android有效解决加载大图片时内存溢出的问题 博客分类: Android Android游戏虚拟机算法JNI 尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图,因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,需要消耗更多内存. 因此,改用先通过BitmapFactory.decodeStream方法,创建出一个bitmap,再将其设为ImageView

WPF加载Winform窗体时 报错:子控件不能为顶级窗体

一.wpf项目中引用WindowsFormsIntegration和System.Windows.Forms 二.Form1.Designer.cs 的 partial class Form1 设置为:public partial class Form1 三.代码如下: XXXX.Form1 Zhuwindow = new XXXX.Form1(); Zhuwindow.TopLevel = false; Zhuwindow.FormBorderStyle = System.Windows.Fo