试图在我的php 5.3 (AMPPS)中安装imagick
我在net中看到执行这个命令的指令,但是有一个错误
安装php53-imagick
==> Installing php53-imagick dependency: php53
==> Downloading http://www.php.net/get/php-5.3.29.tar.bz2/from/this/mirror
######################################################################## 100.0%
==> Patching
patching file configure
patching file configure.in
patching file Zend/zend_language_parser.y
patching file configure
patching file Zend/acinclude.m4
==> rm Zend/zend_{language,ini}_parser.[ch]
==> ./configure --prefix=/usr/local/Cellar/php53/5.3.29 --localstatedir=/usr/loc
checking for krb5-config... /usr/bin/krb5-config
checking for DSA_get_default_method in -lssl... no
checking for X509_free in -lcrypto... yes
checking for pkg-config... no
configure: error: Cannot find OpenSSL's <evp.h>
如何解决这个问题?
我的PHP,Apache,Mysql是用AMPPS安装的
我知道我晚了,但未来的用户可以关注这篇文章。
先下载PHP扩展源代码
user> cd /src/of/php/extension
user> /Applications/AMPPS/php/bin/phpize
注意:下面的命令只是获取选项列表
user> ./configure --help
注意:下面的选项可以从上面执行的--help
中获取。
user> CPPFLAGS="-m32 -I/Applications/AMPPS/extra/include -I/any/other/inclue/path" CFLAGS="-m32" LDFLAGS="-L/Applications/AMPPS/extra/lib -L/any/other/lib/path" ./configure --option1=value1 --option2=value2
user> make
user> sudo make install
你必须移动扩展到扩展目录,并启用它从PHP扩展的Ampps。
回答服务器故障
您需要帮助配置找出在哪里查找evp.h文件,因为默认情况下,它将扫描目录并向它们添加硬编码后缀以查找它。我在我的wiki页面上保留了详细信息,以供那些想要了解解决方案的人使用。以下是对我有用的方法:
root@audio-mon[10.10.10.82] ~/DOWNLOADS/php-5.5.23/ext/mysqlnd # PHP_OPENSSL_DIR="/usr /usr/lib/x86_64-linux-gnu"
root@audio-mon[10.10.10.82] ~/DOWNLOADS/php-5.5.23/ext/mysqlnd # ./configure --with-libdir=""
[...]
checking for DSA_get_default_method in -lssl... yes
checking for X509_free in -lcrypto... yes
checking for pkg-config... /usr/bin/pkg-config
checking for OpenSSL version... >= 0.9.6 # <------------------------------------- YES !
[...]
config.status: creating config.h
config.status: config.h is unchanged
root@audio-mon[10.10.10.82] ~/DOWNLOADS/php-5.5.23/ext/mysqlnd #
YMMV(路径不同)。如果这对您不起作用,请查看wiki页面,它将帮助您找到放置的路径。