|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2007-06-25 07:27 UTC] geoffwa at cs dot rmit dot edu dot au
[2007-06-25 16:26 UTC] sniper@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2026 The PHP GroupAll rights reserved. |
Last updated: Mon Jan 26 09:00:01 2026 UTC |
Description: ------------ The library test for external SQLite3 libraries fails on Solaris 10 as it does not include -lrt and consequently always fails. When building with bundled sqlite3 library, there is a test for -lrt on line 122 of ext/pdo_sqlite/config.m4: dnl Solaris fix PHP_CHECK_LIBRARY(rt, fdatasync, [ PHP_ADD_LIBRARY(rt,, PDO_SQLITE_SHARED_LIBADD)]) This test could be moved so it's usable by both the bundled and non-bundled builds. (I'd offer a patch but my M4 foo is weak) Reproduce code: --------------- shell: ./configure --prefix=/usr/local --with-pdo-sqlite=shared,/usr/local *snip* checking for sqlite 3 support for PDO... yes, shared checking for PDO includes... (cached) /export/work/php-5.2.3/ext checking for sqlite3_open in -lsqlite3... no configure: error: wrong sqlite lib version or lib not found config.log: configure:76889: cc -o conftest -I/usr/include -O -I/usr/local/include -D_POSIX_PTHREAD_SEMANTICS -R/usr/local/lib -L/usr/local/lib -L/usr/lib -L/usr/local/ lib -R/usr/local/lib -R/usr/ucblib -L/usr/ucblib -R/usr/local/lib -L/usr/local/lib -lm conftest.c -lsqlite3 -lintl -lbz2 -lz -lpcre -lresolv -lm -lnsl -ls ocket -lxml2 -lz -lm -lsocket -lnsl -lxml2 -lz -lm -lsocket -lnsl 1>&5 Undefined first referenced symbol in file fdatasync /usr/local/lib/libsqlite3.so ld: fatal: Symbol referencing errors. No output written to conftest configure: failed program was: #line 76878 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char sqlite3_open(); int main() { sqlite3_open() ; return 0; }