【发布时间】:2015-12-31 02:59:05
【问题描述】:
我正在尝试将在 Windows 网络服务器上运行的应用程序移动到在 Centos 7 上运行的 linux 网络服务器。 它基于调用 Microsoft SQL 过程的应用程序,并且我在构建它时使用了 sqlsrv 驱动程序。但是现在当我将它移到新服务器时,它显然无法正常工作,因为 sqlsrv 驱动程序它不受我所支持的 linux 支持读过。
问题是我正在尝试安装 php-mssql 以重写我的代码以使用此驱动程序,但我无法使用 PHP 5.6.13 在 Centos 7 上安装该软件包。当我尝试安装软件包时,我得到以下信息,但我不知道如何修复它或更进一步:
[root@localhost /]# yum install php56w-mssql
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.ines.lug.ro
* epel: fedora.mirrors.telekom.ro
* extras: ftp.ines.lug.ro
* updates: ftp.ines.lug.ro
* webtatic: uk.repo.webtatic.com
Resolving Dependencies
--> Running transaction check
---> Package php56w-mssql.x86_64 0:5.6.13-1.w7 will be installed
--> Processing Dependency: php56w-pdo(x86-64) = 5.6.13-1.w7 for package: php56w-mssql-5.6.13-1.w7.x86_64
--> Processing Dependency: libsybdb.so.5()(64bit) for package: php56w-mssql-5.6.13-1.w7.x86_64
--> Running transaction check
---> Package freetds.x86_64 0:0.91-12.git0a42888.el7 will be installed
--> Processing Dependency: libodbcinst.so.2()(64bit) for package: freetds-0.91-12.git0a42888.el7.x86_64
--> Processing Dependency: libodbc.so.2()(64bit) for package: freetds-0.91-12.git0a42888.el7.x86_64
---> Package php56w-pdo.x86_64 0:5.6.13-1.w7 will be installed
--> Processing Dependency: php56w-common(x86-64) = 5.6.13-1.w7 for package: php56w-pdo-5.6.13-1.w7.x86_64
--> Running transaction check
---> Package php56w-common.x86_64 0:5.6.13-1.w7 will be installed
---> Package unixODBC.x86_64 0:2.3.1-10.el7 will be installed
--> Processing Dependency: libltdl.so.7()(64bit) for package: unixODBC-2.3.1-10.el7.x86_64
--> Running transaction check
---> Package libtool-ltdl.x86_64 0:2.4.2-20.el7 will be installed
Removing php56w-pdo.x86_64 0:5.6.13-1.w7 - u due to obsoletes from installed php-pdo-5.6.13-1.el7.remi.x86_64
Removing php56w-common.x86_64 0:5.6.13-1.w7 - u due to obsoletes from installed php-common-5.6.13-1.el7.remi.x86_64
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package php56w-common.x86_64 0:5.6.13-1.w7 will be installed
---> Package php56w-pdo.x86_64 0:5.6.13-1.w7 will be installed
--> Processing Dependency: php56w-pdo(x86-64) = 5.6.13-1.w7 for package: php56w-mssql-5.6.13-1.w7.x86_64
--> Finished Dependency Resolution
Error: Package: php56w-mssql-5.6.13-1.w7.x86_64 (webtatic)
Requires: php56w-pdo(x86-64) = 5.6.13-1.w7
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
你有什么建议吗?
谢谢
【问题讨论】:
-
看起来您从不同的存储库安装了 PHP(和/或其扩展)。它抱怨
php56w-pdovsphp-pdo和php56w-commonvsphp-common。一个来自 webtatic,另一个来自 remi。您应该从同一个 repo 安装 PHP 和所有扩展。 -
所以我应该删除所有并重新安装?或者你有什么建议?
-
你能做到
yum install php56-mssql吗?那个包是否存在(它也可能被称为php56-php-mssql)?这应该让你所有的包都来自同一个仓库。 -
不,它说:没有包 php56-mssql 可用。
标签: php sql-server linux centos yum