Vij*_*nta 5 php linux 64-bit lamp openssl
通常,我会花很多时间搜索并阅读很多文章来解决问题,但是对于这个特定问题,它却毫无用处。
我正在运行64位Ubuntu Linux服务器,在该服务器上安装了LAMP堆栈,并且libcurl不支持SSL,但操作系统二进制文件确实支持SSL。PHP只是无法读取它。当我搜索解决方案并尝试执行以下操作以在安装PHP时启用ssl支持时,出现了问题。
./configure .... --with-openssl
...
....
/usr/bin/ld: ext/standard/.libs/info.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
ext/standard/.libs/info.o: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make: *** [libphp5.la] Error 1
Run Code Online (Sandbox Code Playgroud)
因此,它突然退出。我试着做--enable-shared --with-pic-parad无济于事。
好的,很抱歉无法在SO本身中正确搜索。相关主题之一解决了这个问题。针对本地符号的错误而重定位R_X86_64_32
我要做的就是这次在配置过程中使用enable-shared选项重新安装了openssl
./config enable-shared
Run Code Online (Sandbox Code Playgroud)
然后我必须重新安装cURL
./configure --with-ssl=/usr/local/ssl --with-zlib
Run Code Online (Sandbox Code Playgroud)
然后我必须重新安装PHP
./configure .... --with-openssl --with-curl ....
Run Code Online (Sandbox Code Playgroud)
..做到了。PHP cURL扩展具有SSL支持。
| 归档时间: |
|
| 查看次数: |
10673 次 |
| 最近记录: |