次の問題があります。Fedora 17 をホスト マシンとして、CentOS 6.3 をゲストとして実行しています。apache-cassandra11-1.1.7-1.noarch
CentOS マシンにCassandra を正常にインストールしました。ここで、Fedora 17 に Thrift を使用して PDO モジュールをインストールする必要があります。これにより、PHP アプリケーションを介して CentOS マシン上の Cassandra にアクセスできるようになります。
Cassandra を「実験」するのはこれが初めてで、Google Code に関する PDO ドキュメントを見つけました。boost-devel、php-devel、pcre-devel などのリポジトリはすべてインストール済みです。問題は、ここでDataStax にアクセスしたときです。Python 2.6 バージョンに対してのみ倹約があり、Python 2.7 がインストールされています。成功した yum --skip-broken も入れましたが、ここで倹約を見ることができます。
- /usr/src/debug/thrift-0.7.0
- /usr/lib/debug/usr/lib64/python2.6/site-packages/thrift
これは、PDO ドキュメント サイト ( /usr/bin/*
)に書かれているとおりではありません。
問題は次のとおりです。python-2.6をインストールする必要がありますか?それは、自分でthriftを再構築する必要があることを意味し、PDOとは何ですか?
誰かがすでにこれを行っている場合は、この問題をどのように解決したかいくつかの手順を提供してください.
前もって感謝します。
編集1:
倹約をインストールするために、私はこれを使用しました:
tar -xzvf thrift-0.7.0.tar.gz
sudo mv thrift-0.7.0 /opt/thrift-0.7.0
chown brian /opt/thrift-0.7.0
cd /opt/thrift-0.7.0/
./configure
make
sudo make install
thrift コマンドを実行すると、オプションの一覧が出力されるので、正常にインストールされたことを意味します。
pdo-cassandraのインストールには、これを使用しました
cd /opt
sudo git clone https://code.google.com/a/apache-extras.org/p/cassandra-pdo/
sudo chown -R brian cassandra-pdo
cd cassandra-pdo/
phpize
./configure
make
make test
make test を実行した後、次のエラーが発生します。
PHP Warning: PHP Startup: Unable to load dynamic library '/opt/cassandra-pdo/modules/pdo_cassandra.so' - /opt/cassandra-pdo/modules/pdo_cassandra.so: undefined symbol: php_pdo_unregister_driver in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/opt/cassandra-pdo/modules/pdo_cassandra.so' - /opt/cassandra-pdo/modules/pdo_cassandra.so: undefined symbol: php_pdo_unregister_driver in Unknown on line 0
=====================================================================
PHP : /usr/bin/php
Warning: PHP Startup: Unable to load dynamic library '/opt/cassandra-pdo/modules/pdo_cassandra.so' - /opt/cassandra-pdo/modules/pdo_cassandra.so: undefined symbol: php_pdo_unregister_driver in Unknown on line 0
PHP_SAPI : cli
PHP_VERSION : 5.4.10
ZEND_VERSION: 2.4.0
PHP_OS : Linux - Linux <user_name> 3.6.11-1.fc17.x86_64 #1 SMP Mon Dec 17 22:16:35 UTC 2012 x86_64
INI actual : /opt/cassandra-pdo/tmp-php.ini
More .INIs :
CWD : /opt/cassandra-pdo
Extra dirs :
VALGRIND : Not used
....
モジュールのロードに何が問題なのか、はい、モジュールはそのフォルダーにあります(/opt/cassandra-pdo/modules/pdo_cassandra.so
)。