php:在 debian gnu/linux 中使用 openssl、ftp、ldap、curl 支持进行编译

php:在 debian gnu/linux 中使用 openssl、ftp、ldap、curl 支持进行编译

我正在尝试在 debian gnu/linux 中编译 php 5.2.x:

./configure --with-ldap --enable-ftp --with-apxs2 --with-mcrypt --enable-bcmath --with-bz2 --enable-calendar --enable-dba=共享 --enable-exif --with-gettext --enable-mbstring --with-mhash --with-readline --enable-shmop --enable-soap --enable-sockets --enable-sysvmsg --enable-wddx --enable-zip --with-zlib --with-xsl

制作

工作完美,但我需要卷曲:

./configure --with-ldap --enable-ftp --with-apxs2 --with-mcrypt --enable-bcmath --with-bz2 --enable-calendar --enable-dba=共享 --enable-exif --with-gettext --enable-mbstring --with-mhash --with-readline --enable-shmop --enable-soap --enable-sockets --enable-sysvmsg --enable-wddx --enable-zip --with-zlib --with-xsl --with-curl

制作

错误:

/usr/bin/ld: ext/curl/.libs/interface.o: 对符号 'CRYPTO_set_id_callback@@OPENSSL_1.0.0' 的未定义引用 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0: 错误添加符号:命令行collect2中缺少DSO:错误:ld返回1退出状态Makefile:241:目标'sapi / cli / php'的配方失败

dpkg -l | dpkg -l | grep openssl

ii libcurl4-openssl-dev:amd64 7.38.0-4+deb8u5
libcurl 的 amd64 开发文件和文档(OpenSSL 风格)

ii libgnutls-openssl27:amd64 3.3.8-6+deb8u3
amd64 GNU TLS 库 - OpenSSL 包装器

ii openssl 1.0.1t-1+deb8u5
amd64 安全套接字层工具包 - 加密实用程序

dpkg -l | dpkg -l | grep 卷曲

ii curl 7.38.0-4+deb8u5
amd64 命令行工具,用于通过 URL 语法传输数据

ii libcurl3:amd64 7.38.0-4+deb8u5
amd64 易于使用的客户端 URL 传输库(OpenSSL 风格)

ii libcurl3-gnutls:amd64 7.38.0-4+deb8u5
amd64 易于使用的客户端 URL 传输库(GnuTLS 风格)

ii libcurl4-openssl-dev:amd64 7.38.0-4+deb8u5
libcurl 的 amd64 开发文件和文档(OpenSSL 风格)

更新:错误与支持 openssl 的 FTP 有关:

./configure --with-openssl --enable-ftp

制作

ext/openssl/openssl.o: In function `zm_startup_openssl':
/usr/src/php-5.2.17/ext/openssl/openssl.c:681: undefined reference to `SSL_library_init'
...
collect2: error: ld returned 1 exit status
Makefile:228: recipe for target 'sapi/cli/php' failed
make: *** [sapi/cli/php] Error 1

答案1

问题是 openssl,好吧,我安装了 openssl 0.9.8来源

/usr/src由于错误,请继续编译它,并在没有手册页的情况下安装它:

./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl no-asm -fPIC

制作

进行安装_sw

然后我php用这个选项编译:

./configure --with-openssl=/usr/local/openssl --with-openssl-dir=/usr/local/openssl --with-curl --enable-ftp --with-ldap --with-apxs2 - -enable-bcmath --with-bz2 --enable-calendar --enable-exif --enable-mbstring --with-mhash --enable-shmop --enable-soap --enable-sockets --enable-sysvmsg - -启用-zip --with-zlib

制作

更新:也适用于 5.6.28

相关内容