【问题标题】:Install PHP 5.3 after removing PHP 5.4 - libcurl.so.3()(64bit) issue删除 PHP 5.4 后安装 PHP 5.3 - libcurl.so.3()(64bit) 问题
【发布时间】:2014-02-12 19:07:15
【问题描述】:

我升级到 PHP 5.4,这导致我的多个脚本出现问题,这些脚本使用了已弃用的 mysql_connect 函数。稍后我需要重做这些才能使用它,但现在我想回到 PHP 5.3

我完全删除了 PHP 5.4,添加了 webtactic repo,告诉 atomic repo 忽略 php,php-*

然后我执行 yum install php php-cli php-gd php-mysql php-mbstring 会发生这种情况:

Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
epel/metalink
 * atomic: www4.atomicorp.com
 * base: mirror.beyondhosting.net
 * epel: archive.linux.duke.edu
 * extras: centos.mbni.med.umich.edu
 * updates: centos.mbni.med.umich.edu
 * webtatic: us-east.repo.webtatic.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php.x86_64 0:5.3.28-2.w5 will be installed
--> Processing Dependency: php-common = 5.3.28-2.w5 for package: php-5.3.28-2.w5.x86_64
--> Processing Dependency: libssl.so.6()(64bit) for package: php-5.3.28-2.w5.x86_64
--> Processing Dependency: libcrypto.so.6()(64bit) for package: php-5.3.28-2.w5.x86_64
---> Package php-cli.x86_64 0:5.3.28-2.w5 will be installed
--> Processing Dependency: libtermcap.so.2()(64bit) for package: php-cli-5.3.28-2.w5.x86_64
--> Processing Dependency: libreadline.so.5()(64bit) for package: php-cli-5.3.28-2.w5.x86_64
---> Package php-gd.x86_64 0:5.3.28-2.w5 will be installed
---> Package php-mbstring.x86_64 0:5.3.28-2.w5 will be installed
---> Package php-mysql.x86_64 0:5.3.28-2.w5 will be installed
--> Processing Dependency: php-pdo = 5.3.28-2.w5 for package: php-mysql-5.3.28-2.w5.x86_64
--> Processing Dependency: libmysqlclient.so.15(libmysqlclient_15)(64bit) for package: php-mysql-5.3.28-2.w5.x86_64
--> Processing Dependency: libmysqlclient.so.15()(64bit) for package: php-mysql-5.3.28-2.w5.x86_64
--> Running transaction check
---> Package compat-libtermcap.x86_64 0:2.0.8-49.el6 will be installed
---> Package compat-readline5.x86_64 0:5.2-17.1.el6 will be installed
---> Package libmysqlclient15.x86_64 0:5.0.95-5.w5 will be installed
---> Package openssl098e.x86_64 0:0.9.8e-17.el6.centos.2 will be installed
---> Package php-common.x86_64 0:5.3.28-2.w5 will be installed
--> Processing Dependency: libcurl.so.3()(64bit) for package: php-common-5.3.28-2.w5.x86_64
---> Package php-pdo.x86_64 0:5.3.28-2.w5 will be installed
--> Finished Dependency Resolution
Error: Package: php-common-5.3.28-2.w5.x86_64 (webtatic)
           Requires: libcurl.so.3()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

如何解决 libcurl.so.3()(64bit) 问题?

【问题讨论】:

  • mysql_connect() 直到 PHP5.5 才被弃用(注意:'deprecated' 确实 not 意味着'删除'),目前看来支持将继续使用 PHP5 .6 也是如此。无论您的问题是什么,都不是原因已弃用的功能。
  • 明白,为错误的用词道歉。 Alexandru G. 在下面的回复解决了我回到 PHP 5.3.3 的问题。至于 PHP 5.4 的问题是什么,我不再收到我收到的错误消息。我将很快在测试环境中解决此问题,并在我开始解决该问题后发布更新。不过感谢您的评论=)

标签: php libcurl centos6


【解决方案1】:

不久前我遇到了类似的事情,当时我不小心在 el6 机器上安装了一个 el5 存储库。

为了解决这个问题,我:

  • 删除了所有已安装的 el5 软件包。 (我通过rpm -qa | grep el5 找到了他们)
  • 删除了 el5 存储库
  • 已安装 el6 存储库

然后一切都奏效了。

看到软件包名称中的“w5”标签,让我觉得您犯了类似的错误,并且您在 centos 6 机器上安装了 centos 5 的存储库。

更新:看来我是对的。 Webtatic 它对 el5 包使用“w5”标签,对 el6 包使用“w6”标签。所以你在 el6 机器上安装了一个 el5 repo。

【讨论】:

  • 我安装的唯一 el5 包是 htop-1.0.2-1.el5.rf.x86_64 我删除了它,检查了任何启用的 el5 存储库,有 rpmforge el5,禁用它。仍然得到同样的错误编辑:哎呀没有安装 el6 的 rpmforge,我想我会试试的 - 给我一分钟
  • 我启用了 el6 rpmforge repo,仍然有同样的错误。然后我禁用了 webtatic repo,它起作用了!!成功安装 PHP 5.3.3。感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2017-02-10
  • 2012-10-02
  • 2012-06-28
  • 1970-01-01
  • 2014-05-08
  • 2017-06-21
  • 1970-01-01
  • 2013-07-02
相关资源
最近更新 更多