我需要在amazon ec2 linux 2实例上安装php-imap。 所有的PHP内容都在amzn2extra-lamp-mariadb10.2-php7.2里面,但缺少php-imap包。 有什么建议吗?
由于
答案 0 :(得分:2)
我是这样安装的。
我在Amazon Linux 2中下载了当前安装版本的php源代码
wget http://php.net/get/php-7.2.8.tar.bz2/from/a/mirror
打开包装,进入php-7.2.8 / ext / imap /
编译后的扩展名:
phpize
./configure
我遇到了一些错误。
一些U8T_CANONICAL的东西
sudo yum install libc-client-devel
然后找不到libc-client.a,因此为其创建了符号链接:
cd /usr/lib
sudo ln -s /usr/lib64/libc-client.a
其他一些imap库错误,例如:
sudo yum install uw-imap-static
我还有其他错误,因此工作配置行是:
./configure --with-kerberos --with-imap-ssl
make
成功!
cd php-7.2.8/ext/imap/modules
sudo cp imap.so /usr/lib64/php/modules/
创建了一个ini文件来加载它:
sudo vi /etc/php.d/30-imap.ini
将以下内容添加到文件中:
extension=imap
重新启动php服务(根据您的php安装,您可能需要重新启动httpd):
sudo systemctl restart php-fpm
PHPinfo现在包含: imap IMAP c客户端版本2007f 启用SSL支持 启用Kerberos支持
答案 1 :(得分:0)
对于那些遇到 U8T_CANONICAL 错误并且无法在 Amazon Linux 2 AMI 上安装 libc-client-devel 的用户>需要做一些额外的事情来解决 U8T_CANONICAL 错误。
主要问题是libc-client-devel不可用,因此我们需要采用另一种方式。
我在搜索问题时发现了this link。这里发布的解决方案是可靠的。我给出的以下链接是针对那些无法安装 libc-client-devel 的用户的。
或者您也可以复制粘贴我在下面给出的命令。
1-sudo yum groupinstall "Development Tools"
2-{{1}}
3-sudo amazon-linux-extras install epel
4-yum install epel-release
5-sudo yum install libc-client-devel uw-imap-static openssl-devel
其余的都可以从受访者那里获得。 再次感谢回答的人。
答案 2 :(得分:-1)
这里也有同样的问题。
我来自debian / ubuntu,我想念aws linux2上的很多php包。 我知道它仍然是候选人,而不是最终的LTS版本。只有这个发行版工作了一个月,看到了很多变化和更新。一些php依赖项可以用pear或pecl解决,但我无法在php-imap上工作。
php-imap依赖于libc-client(也许这是一个问题?)
这是我的解决方案。
CODE
wget https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64//php72u-imap-7.2.5-2.ius.centos7.x86_64.rpm -P /tmp
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libc-client-2007f-16.el7.x86_64.rpm -P /tmp
rpm -i /tmp/libc-client-2007f-16.el7.x86_64.rpm
rpm -i /tmp/php72u-imap-7.2.5-2.ius.centos7.x86_64.rpm
如果失败,因为失败的依赖项:
rpm -ivh /tmp/php72u-imap-7.2.5-2.ius.centos7.x86_64.rpm --nodeps
我不喜欢这个解决方案,但现在找不到更稳定,更容易的任何其他解决方案。更新会带来痛苦......