0

に不明でcass_cluster_set_whitelist_dc_filtering Iは、以下のプロセスを使用して、PHPのためのdatastaxのCassandraのドライバ拡張をインストールした:問題:未定義シンボル:行0

  • インストール依存性:Automakeにcmakeのソースからソース
  • から
  • インストールPHP DatastaxのCassandraのドライバをコンパイルすることにより、GCC GCC-C++のgitのlibtoolのOpenSSL-develのwgetののGMPのGMP-develのブーストPHP-のdevel PCRE-develのGitのlibuvのGMP
  • インストールCPP-ドライバ/etc/php.iniファイル内
  • 追加拡張

私はカサンドラクラスタに接続するためにPHPファイルを実行しようとすると、私は次のエラー取得:

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/cassandra.so' 
- /usr/lib64/php/modules/cassandra.so: undefined symbol: cass_cluster_set_whitelist_dc_filtering in Unknown on line 0 

を私は代わりにバイナリを使ってインストールしようとしましたが、私はまだ同じ問題に直面しています。あなたの助けのための

ldd /usr/lib64/php/modules/cassandra.so 
    linux-vdso.so.1 => (0x00007ffe9ad9a000) 
    libgmp.so.3 => /usr/lib64/libgmp.so.3 (0x00007f2377ca2000) 
    libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f2377a35000) 
    libz.so.1 => /lib64/libz.so.1 (0x00007f237781f000) 
    libuv.so.1 => /usr/lib64/libuv.so.1 (0x00007f23775fe000) 
    librt.so.1 => /lib64/librt.so.1 (0x00007f23773f5000) 
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f23771d8000) 
    libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f2376fbf000) 
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f2376dba000) 
    libm.so.6 => /lib64/libm.so.6 (0x00007f2376b36000) 
    libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f2376830000) 
    libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f2376619000) 
    libc.so.6 => /lib64/libc.so.6 (0x00007f2376285000) 
    libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f2376041000) 
    libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f2375d59000) 
    libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f2375b55000) 
    libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f2375929000) 
    libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007f2375544000) 
    /lib64/ld-linux-x86-64.so.2 (0x00000030d4a00000) 
    libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f2375339000) 
    libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f2375135000) 
    libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f2374f1b000) 
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f2374cfb000) 

ありがとう:ここ

は、LDD出力されます。

答えて

0

php-driver拡張機能に間違ったバージョンのcppドライバを使用しているようです。現在、php-driverマスターでは、cpp-driverサブモジュールはv2.2.2を指していますが、ブラックリスト、ホワイトリストDC、およびブラックリストDC負荷分散ポリシーはv2.3.0に追加されています。

cppドライバの最新リリースをビルドしてインストールし、使用しているphpドライバソースのビルドとインストールを再度実行することをお勧めします。

+0

HI Fero、古いCPPドライバを削除して、新しいCPPドライバをインストールしました** 'rpm -qa | grep cassandra-cpp-driver * cassandra-cpp-driver-devel-2.3.0-1.el6.x86_64 cassandra-cpp-driver-2.3.0-1.el6.x86_64' ** そしてphpドライバを再構築するソースから、しかしまだ運がありません。私は何が欠けていますか? – Piyush

+0

@Piyush:DataStax C/C++ドライバ[v2.3.0](http://downloads.datastax.com/cpp-driver/centos/6/v2.3.0/)を使用して、CentOS 6.7 [x64]の新規インストールを実行しました。 )およびlibuv [v1.8.0](http://downloads.datastax.com/cpp-driver/centos/6/dependencies/libuv/v1.8.0/)RPM依存関係に続いてDataStax PHPドライバのビルドプロセスを実行する[ v1.1.0](https://github.com/datastax/php-driver/tree/v1.1.0)。ビルドの問題を解決するために役立つVagrantスクリプト[gist](https://gist.github.com/mikefero/a4c76a1dcce6ccae38f5c22bc00f57b2)を作成しました。 – Fero

関連する問題