我正在设置方形api,将其集成到客户端,现在在服务器端工作,但是为此,我需要在安装作曲家时使用composer
管理依赖项。
我正在安装composer,当我运行composer install
时,就安装了composer,但除此之外,我还收到了PHP警告
PHP警告:PHP启动:无法加载动态库 'cassandra.so'(尝试:/usr/lib/php/20170718/cassandra.so (/usr/lib/php/20170718/cassandra.so:无法打开共享对象文件: 没有此类文件或目录),/ usr / lib / php / 20170718 / cassandra.so.so (/usr/lib/php/20170718/cassandra.so.so:无法打开共享对象 文件:没有此类文件或目录)),位于第0行的未知中
我用谷歌搜索并尝试了所有已经完成的解决方案,但都没有找到解决方案。我尝试过:
sudo apt-get install php-cassandra
中使用命令/usr/lib/php/20170718
安装Cassandra,但仍然显示相同的错误。我希望安装cassandra并动态加载它。
答案 0 :(得分:0)
DataStax PHP驱动程序扩展是C / C ++驱动程序的包装,并且需要installation的所有依赖项:
由于您将PHP驱动程序与PHP v7.2一起使用,因此您将需要构建扩展,因为它们不是此版本PHP的预构建二进制文件:
git clone https://github.com/datastax/php-driver.git
cd php-driver/ext
phpize
cd ..
mkdir build
cd build
../ext/configure
make
sudo make install
注意:为了正确构建扩展,需要所有依赖项的开发包。
安装驱动程序后,您将需要编辑php.ini
文件以启用可以通过执行php -r "echo php_ini_loaded_file();"
找到的扩展名:
; DataStax PHP Driver for Apache Cassandra
extension=cassandra.so
要确保通过CLI正确加载驱动程序,可以执行以下操作:
php -m | grep cassandra
或
php -i | grep -A 10 "^cassandra$"
php -m
将打印出PHP能够加载的所有扩展/模块,而php -i
将显示有关PHP安装配置的更多详细信息。