我正在尝试在 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