私の目標は、PHPを使用してMS SQL Server2005に接続することです。 PHPとODBCをインストールしました。CentOS7を実行しています。
PHP Version => 5.4.16
....(php -iから)..。
odbc
ODBC Support => enabled
Freetdsとphp-mssql拡張機能をインストールしようとすると、2つの依存関係の問題が発生します。 (下記参照)
[root@localhost freetds-dev.0.92.377]# yum install php-mssql freetds
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.supremebytes.com
* epel: mirror.sfo12.us.leaseweb.net
* extras: mirrors.cat.pdx.edu
* rpmforge: mirror.hmc.edu
* updates: ftp.osuosl.org
Resolving Dependencies
--> Running transaction check
---> Package freetds.x86_64 0:0.91-2.el6 will be installed
--> Processing Dependency: libgnutls.so.26(GNUTLS_1_4)(64bit) for package: freetds-0.91-2.el6.x86_64
--> Processing Dependency: libgnutls.so.26()(64bit) for package: freetds-0.91-2.el6.x86_64
---> Package php-mssql.x86_64 0:5.3.3-3.el6 will be installed
--> Processing Dependency: php(zend-abi) = 20090626 for package: php-mssql-5.3.3-3.el6.x86_64
--> Processing Dependency: php(api) = 20090626 for package: php-mssql-5.3.3-3.el6.x86_64
--> Finished Dependency Resolution
Error: Package: freetds-0.91-2.el6.x86_64 (epel)
Requires: libgnutls.so.26()(64bit)
Error: Package: php-mssql-5.3.3-3.el6.x86_64 (epel)
Requires: php(api) = 20090626
Installed: php-common-5.4.16-23.el7_0.3.x86_64 (@updates)
php(api) = 20100412-64
Available: php-common-5.4.16-21.el7.x86_64 (base)
php(api) = 20100412-64
Available: php-common-5.4.16-23.el7_0.x86_64 (updates)
php(api) = 20100412-64
Available: php-common-5.4.16-23.el7_0.1.x86_64 (updates)
php(api) = 20100412-64
Error: Package: freetds-0.91-2.el6.x86_64 (epel)
Requires: libgnutls.so.26(GNUTLS_1_4)(64bit)
Error: Package: php-mssql-5.3.3-3.el6.x86_64 (epel)
Requires: php(zend-abi) = 20090626
Installed: php-common-5.4.16-23.el7_0.3.x86_64 (@updates)
php(zend-abi) = 20100525-64
Available: php-common-5.4.16-21.el7.x86_64 (base)
php(zend-abi) = 20100525-64
Available: php-common-5.4.16-23.el7_0.x86_64 (updates)
php(zend-abi) = 20100525-64
Available: php-common-5.4.16-23.el7_0.1.x86_64 (updates)
php(zend-abi) = 20100525-64
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
私はlibgnutls.soバージョン28を持っていますが
/usr/lib64/libgnutls.so.28
/usr/lib64/libgnutls.so.28.20.4
インストールしようとしているパッケージのバージョンにel6
があり、7ではなくCentOS6用であることを示しています。間違ったバージョンのCentOS用のEPELリポジトリを追加したようです。 EPEL6のyum
構成を削除し、7の構成を追加する必要があります。次の方法で7の構成を追加できます。
rpm -Uvh http://mirror.oss.ou.edu/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
私は同じ問題に苦しんでおり、OS7を使用していることを知っています。
Freetdsを個別にインストールする必要がありますか?
Red Hat Enterprise Linux Server release 7.3 (Maipo)
Installed:
epel-release.noarch 0:7-9
Error: Package: freetds-0.91-2.el6.x86_64 (epel)
Requires: libgnutls.so.26(GNUTLS_1_4)(64bit)
/usr/lib64/.libgnutls.so.28.41.16.hmac
/usr/lib64/.libgnutls.so.28.hmac
/usr/lib64/libgnutls.so.28
/usr/lib64/libgnutls.so.28.41.16