PHP 启动:无法使用 Jenkins 加载动态库“/usr/lib/php/20160303/pdo_sqlite.so”

nte*_*rms 2 sqlite jenkins php-7.1

在 Jenkins 管道中运行 phpunit 测试套件时,我收到此警告。

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20160303/pdo_sqlite.so' - /usr/lib/php/20160303/pdo_sqlite.so: undefined symbol: sqlite3_column_table_name in Unknown on line 0
Run Code Online (Sandbox Code Playgroud)

但是,在终端中直接运行测试套件时不会抛出此警告。

我的系统中有 PHP 7.1,这是我安装的唯一 PHP 版本。php7.1-sqlite3已安装。

先感谢您。

Inc*_*ony 6

据我所知,/usr/local/lib调用中有一个错误文件libsqlite3.so.0指向libsqlite3.so.0.8.6. 我重命名了文件,以防万一。使用命令:

cd /usr/local/lib sudo mv libsqlite3.so.0 ./libsqlite3.so.0.back

但你也可以删除它: rm libsqlite3.so.0

引导我找到答案的线程:链接

这解决了我的问题,我希望它们也能解决你的问题:)


小智 5

我在 Ubuntu 16.04 上使用 PHP 7.1 时也遇到了同样的问题。

运行以下命令解决了我的问题:

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.1-sqlite3
Run Code Online (Sandbox Code Playgroud)