Bug #79056 [Fbk->Csd]: sqlite does not respect PKG_CONFIG_PATH during compilation
Edit report at https://bugs.php.net/bug.php?id=79056&edit=1
ID: 79056
Updated by: nikic@php.net
Reported by: naox at yum dot pl
Summary: sqlite does not respect PKG_CONFIG_PATH during
compilation
-Status: Feedback
+Status: Closed
Type: Bug
Package: Compile Failure
PHP Version: 7.4.1
Assigned To: cmb
Block user comment: N
Private report: N
New Comment:
Automatic comment on behalf of nikita.ppv@gmail.com
Revision: http://git.php.net/?p=php-src.git;a=commit;h=1dcdcd79badcd0c685580abb2e4e9064ee8cfa80
Log: Fixed bug #79056
Previous Comments:
------------------------------------------------------------------------
[2020-01-03 09:38:56] cmb@php.net
Ah, that makes sense! naox@, please try nikic's patch.
------------------------------------------------------------------------
[2020-01-03 09:11:16] nikic@php.net
@cmb: I don't think this patch makes sense, as the $SQLITE_ prefix is determined by the
PKG_CHECK_MODULES() call, which is just SQLITE also in PDO.
I'd suggest something like https://gist.github.com/nikic/75dac4f4bff80945127d1acb84e010a0.
The main issue here is that EVAL_LIBLINE should be performed before CHECK_LIBRARY, but in this
particular case these CHECK_LIBRARY calls should be omitted entirely, per our policy to trust
pkg-config when it comes to package existence.
------------------------------------------------------------------------
[2020-01-03 08:01:10] cmb@php.net
Could you please try with the attached patch?
------------------------------------------------------------------------
[2020-01-03 08:00:35] cmb@php.net
The following patch has been added/updated:
Patch Name: 79056
Revision: 1578038435
URL: https://bugs.php.net/patch-display.php?bug=79056&patch=79056&revision=1578038435
------------------------------------------------------------------------
[2020-01-02 19:55:28] naox at yum dot pl
Description:
------------
PKG_CONFIG_PATH=/usr/sqlite-autoconf-3300100/lib/pkgconfig ./configure
checking for sqlite3 > 3.7.4... yes
checking for sqlite3_stmt_readonly in -lsqlite3... no
configure: error: Please install SQLite 3.7.4 first or check libsqlite3 is present
I suspect compilation does not respect sqlite from PKG_CONFIG_PATH.
It would be usefull if it printed sqlite version it uses...
When I cut out these test from configure script I got errors like that, which suggest wrong sqlite
version was used.
ext/pdo_sqlite/.libs/sqlite_statement.o: In function `pdo_sqlite_stmt_param_hook':
sqlite_statement.c:(.text+0x58f): undefined reference to `sqlite3_reset'
sqlite_statement.c:(.text+0x5e2): undefined reference to `sqlite3_bind_text'
sqlite_statement.c:(.text+0x620): undefined reference to `sqlite3_bind_null'
sqlite_statement.c:(.text+0x697): undefined reference to `sqlite3_bind_blob'
sqlite_statement.c:(.text+0x6d5): undefined reference to `sqlite3_bind_int64'
sqlite_statement.c:(.text+0x71b): undefined reference to `sqlite3_bind_parameter_index'
sqlite_statement.c:(.text+0x738): undefined reference to `sqlite3_bind_null'
sqlite_statement.c:(.text+0x761): undefined reference to `sqlite3_bind_null'
sqlite_statement.c:(.text+0x7f2): undefined reference to `sqlite3_bind_null'
ext/pdo_sqlite/.libs/sqlite_statement.o: In function `pdo_sqlite_stmt_execute':
sqlite_statement.c:(.text+0x88d): undefined reference to `sqlite3_step'
sqlite_statement.c:(.text+0x8e9): undefined reference to `sqlite3_data_count'
sqlite_statement.c:(.text+0x989): undefined reference to `sqlite3_column_count'
sqlite_statement.c:(.text+0xa07): undefined reference to `sqlite3_reset'
sqlite_statement.c:(.text+0xa15): undefined reference to `sqlite3_reset'
sqlite_statement.c:(.text+0xa3e): undefined reference to `sqlite3_changes'
sqlite_statement.c:(.text+0xa4d): undefined reference to `sqlite3_reset'
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=79056&edit=1
Thread (8 messages)