Bug #62971 [Opn]: cannot get ./configure and make to both complete - one or the other fails
Edit report at https://bugs.php.net/bug.php?id=62971&edit=1 ID: 62971 User updated by:mamfelt at gmail dot com Reported by:mamfelt at gmail dot com Summary:cannot get ./configure and make to both complete - one or the other fails Status: Open Type: Bug Package:Compile Failure Operating System: AIX PHP Version:5.4.6 Block user comment: N Private report: N New Comment: Update: After correcting the comments to /* */ (will use compiler flag in the future) I ran make and it completed with an error for both 5.3.16 and 5.4.6 5.3.16 /cli/php_cli.lo sapi/cli/php_cli_readline.lo main/internal_functions_cli.lo -lrt -liconv -lsqlite3 -lrt -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -o sapi/cli/php ld: 0711-317 ERROR: Undefined symbol: .sqlite3_column_table_name ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make: *** [sapi/cli/php] Error 8 5.4.6 i/cli/php_cli_server.lo -lrt -liconv -lsqlite3 -lrt -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -o sapi/cli/php ld: 0711-319 WARNING: Exported symbol not defined: php_register_internal_extensions ld: 0711-317 ERROR: Undefined symbol: php_register_internal_extensions ld: 0711-317 ERROR: Undefined symbol: .sqlite3_column_table_name ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make: *** [sapi/cli/php] Error 8 === After performing a 'make distclean' on both I reran configure with no extra statement re: sqlite3, i.e. for both 5.3.16 and 5.4.6 # ./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man configure and make for 5.3.16 complete as expected configure completes, but make fails for 5.4.6 -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -lxml2 -liconv -lm -o sapi/cli/php ld: 0711-319 WARNING: Exported symbol not defined: php_register_internal_extensions ld: 0711-317 ERROR: Undefined symbol: php_register_internal_extensions ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make: *** [sapi/cli/php] Error 8 root@x104:[/data/prj/php-5.4.6] -- maybe for this (ERROR: Undefined symbol: php_register_internal_extensions) -- I should submit a new bug - please advise. Previous Comments: [2012-08-30 11:47:06] mamfelt at gmail dot com p.s. I have peeked at ext/sqlite3/sqlite3.c and the only issue is this is the one place in PHP code that is using // comments rather than /* comments */ The AIX compiler can recognize // comments - however, may I interject that this is the ONLY file in PHP that seems to be using them. Maybe /* comment */ is the norm in PHP and this could be adjusted. Not a bug! just not consistent. My questions regarding the behavior of --with-sqlite3 is still open. Thank you for your consideration. [2012-08-30 11:38:53] mamfelt at gmail dot com reply to pajoye My first example is: # ./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --with-sqlite3=/opt configure completes correctly, but make fails (also version 5.3.16 - tested today, and 5.3.14 from memory.) Right now I am try to 'not' comment on the reason for a syntax error in the embedded sqlite3. That is not exciting to me right now (maybe later). Right now I am focusing on getting a minimum build complete so I can move on to the packaging scripts to create an installp file. Then I shall try to make a "maximum" capability - i.e., as many as I get to build - version of php. If I understand your comment the --help text should be read as: --without-sqlite3 || --with-sqlite3=DIR Second question: If I use the --with-sqlite3=DIR option should make still be trying to build (and I assume link) the embedded version? From your comments I would think not. [2012-08-30 08:01:30] paj...@php.net sqlite3 is enabled by default, use --without-sqlite3 only if you do not want it. PHP also includes libsqlite as well as part of the distribution, so you do not have to install or use the system one. However you can still do it by using: --with-sqlite3=/usr for example. [2012-08-30 06:03:33] mamfelt at gmail dot com FYI: I understand why the 5.2.17 ./configure complained - no intent on sqlite3, was just sqlite "back then". >From below you can see the version of sqlite I have pre-loaded is 3.6.22 root@x104:[/data/prj]find . -name sqlite3.c -ls 733476 4419 -rw-r- 1 michael staff 4524415 Aug 15 19:05 ./php-5.3.16/ext/sqlite3/libsqlite/sqlite3.c 733446 66 -rw-r- 1 michael staff
Bug #62971 [Opn]: cannot get ./configure and make to both complete - one or the other fails
Edit report at https://bugs.php.net/bug.php?id=62971&edit=1 ID: 62971 User updated by:mamfelt at gmail dot com Reported by:mamfelt at gmail dot com Summary:cannot get ./configure and make to both complete - one or the other fails Status: Open Type: Bug Package:Compile Failure Operating System: AIX PHP Version:5.4.6 Block user comment: N Private report: N New Comment: p.s. I have peeked at ext/sqlite3/sqlite3.c and the only issue is this is the one place in PHP code that is using // comments rather than /* comments */ The AIX compiler can recognize // comments - however, may I interject that this is the ONLY file in PHP that seems to be using them. Maybe /* comment */ is the norm in PHP and this could be adjusted. Not a bug! just not consistent. My questions regarding the behavior of --with-sqlite3 is still open. Thank you for your consideration. Previous Comments: [2012-08-30 11:38:53] mamfelt at gmail dot com reply to pajoye My first example is: # ./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --with-sqlite3=/opt configure completes correctly, but make fails (also version 5.3.16 - tested today, and 5.3.14 from memory.) Right now I am try to 'not' comment on the reason for a syntax error in the embedded sqlite3. That is not exciting to me right now (maybe later). Right now I am focusing on getting a minimum build complete so I can move on to the packaging scripts to create an installp file. Then I shall try to make a "maximum" capability - i.e., as many as I get to build - version of php. If I understand your comment the --help text should be read as: --without-sqlite3 || --with-sqlite3=DIR Second question: If I use the --with-sqlite3=DIR option should make still be trying to build (and I assume link) the embedded version? From your comments I would think not. [2012-08-30 08:01:30] paj...@php.net sqlite3 is enabled by default, use --without-sqlite3 only if you do not want it. PHP also includes libsqlite as well as part of the distribution, so you do not have to install or use the system one. However you can still do it by using: --with-sqlite3=/usr for example. [2012-08-30 06:03:33] mamfelt at gmail dot com FYI: I understand why the 5.2.17 ./configure complained - no intent on sqlite3, was just sqlite "back then". >From below you can see the version of sqlite I have pre-loaded is 3.6.22 root@x104:[/data/prj]find . -name sqlite3.c -ls 733476 4419 -rw-r- 1 michael staff 4524415 Aug 15 19:05 ./php-5.3.16/ext/sqlite3/libsqlite/sqlite3.c 733446 66 -rw-r- 1 michael staff67532 Aug 15 19:05 ./php-5.3.16/ext/sqlite3/sqlite3.c 292548 4419 -rw-r--r-- 1 michael nobody 4524464 Aug 9 2011 ./php-5.3.8/ext/sqlite3/libsqlite/sqlite3.c 292518 63 -rw-r--r-- 1 michael nobody 63743 Aug 10 2011 ./php-5.3.8/ext/sqlite3/sqlite3.c 741218 4419 -rw-r--r-- 1 michael staff 4524426 Aug 15 06:26 ./php-5.4.6/ext/sqlite3/libsqlite/sqlite3.c 741176 66 -rw-r--r-- 1 michael staff67221 Aug 15 06:26 ./php-5.4.6/ext/sqlite3/sqlite3.c 102500 4419 -rw--- 1 michael staff 4524415 Jun 13 10:18 ./php-5.3.14/ext/sqlite3/libsqlite/sqlite3.c 102438 66 -rw--- 1 michael staff67501 Jun 13 10:18 ./php-5.3.14/ext/sqlite3/sqlite3.c 329718 4419 -rw--- 1 michael staff 4524415 Jun 13 06:54 ./php-5.4.4/ext/sqlite3/libsqlite/sqlite3.c 704810 66 -rw--- 1 michael staff67153 Jun 13 06:54 ./php-5.4.4/ext/sqlite3/sqlite3.c 426064 3782 -rw-r--r-- 1 michael nobody 3872493 Jan 5 2010 ./sqlite-3.6.22/sqlite3.c root@x104:[/data/prj]find . -name sqlite.c -ls 637193 83 -rw-r--r-- 1 michael nobody 84573 Apr 28 2010 ./php-5.2.17/ext/sqlite/sqlite.c 756929 95 -rw-r- 1 michael staff96718 Aug 15 19:05 ./php-5.3.16/ext/sqlite/sqlite.c 553336 95 -rw-r--r-- 1 michael nobody 96804 Jan 1 2011 ./php-5.3.8/ext/sqlite/sqlite.c 119415 95 -rw--- 1 michael staff96712 Jun 13 10:18 ./php-5.3.14/ext/sqlite/sqlite.c root@x104:[/data/prj]lslpp -L | grep sql aixtools.sqlite.rte 3.6.22.0C Fsqlite version 3.6.22 I hope this provides sufficient detail to determine a next step/question. Thanks! p.s. php-5.3.14 and php-5.3.16 also complain about the --without-sqlite3=DIR (and also with --without-sqlite=DIR) root@x104:[/data/prj/php-5.3.16]./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --without-sqlite3=/opt configure: error: sqlite3=/opt: invalid package name root@x104:[/data/prj/php-5.3.16]./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr
Bug #62971 [Opn]: cannot get ./configure and make to both complete - one or the other fails
Edit report at https://bugs.php.net/bug.php?id=62971&edit=1 ID: 62971 User updated by:mamfelt at gmail dot com Reported by:mamfelt at gmail dot com Summary:cannot get ./configure and make to both complete - one or the other fails Status: Open Type: Bug Package:Compile Failure Operating System: AIX PHP Version:5.4.6 Block user comment: N Private report: N New Comment: reply to pajoye My first example is: # ./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --with-sqlite3=/opt configure completes correctly, but make fails (also version 5.3.16 - tested today, and 5.3.14 from memory.) Right now I am try to 'not' comment on the reason for a syntax error in the embedded sqlite3. That is not exciting to me right now (maybe later). Right now I am focusing on getting a minimum build complete so I can move on to the packaging scripts to create an installp file. Then I shall try to make a "maximum" capability - i.e., as many as I get to build - version of php. If I understand your comment the --help text should be read as: --without-sqlite3 || --with-sqlite3=DIR Second question: If I use the --with-sqlite3=DIR option should make still be trying to build (and I assume link) the embedded version? From your comments I would think not. Previous Comments: [2012-08-30 08:01:30] paj...@php.net sqlite3 is enabled by default, use --without-sqlite3 only if you do not want it. PHP also includes libsqlite as well as part of the distribution, so you do not have to install or use the system one. However you can still do it by using: --with-sqlite3=/usr for example. [2012-08-30 06:03:33] mamfelt at gmail dot com FYI: I understand why the 5.2.17 ./configure complained - no intent on sqlite3, was just sqlite "back then". >From below you can see the version of sqlite I have pre-loaded is 3.6.22 root@x104:[/data/prj]find . -name sqlite3.c -ls 733476 4419 -rw-r- 1 michael staff 4524415 Aug 15 19:05 ./php-5.3.16/ext/sqlite3/libsqlite/sqlite3.c 733446 66 -rw-r- 1 michael staff67532 Aug 15 19:05 ./php-5.3.16/ext/sqlite3/sqlite3.c 292548 4419 -rw-r--r-- 1 michael nobody 4524464 Aug 9 2011 ./php-5.3.8/ext/sqlite3/libsqlite/sqlite3.c 292518 63 -rw-r--r-- 1 michael nobody 63743 Aug 10 2011 ./php-5.3.8/ext/sqlite3/sqlite3.c 741218 4419 -rw-r--r-- 1 michael staff 4524426 Aug 15 06:26 ./php-5.4.6/ext/sqlite3/libsqlite/sqlite3.c 741176 66 -rw-r--r-- 1 michael staff67221 Aug 15 06:26 ./php-5.4.6/ext/sqlite3/sqlite3.c 102500 4419 -rw--- 1 michael staff 4524415 Jun 13 10:18 ./php-5.3.14/ext/sqlite3/libsqlite/sqlite3.c 102438 66 -rw--- 1 michael staff67501 Jun 13 10:18 ./php-5.3.14/ext/sqlite3/sqlite3.c 329718 4419 -rw--- 1 michael staff 4524415 Jun 13 06:54 ./php-5.4.4/ext/sqlite3/libsqlite/sqlite3.c 704810 66 -rw--- 1 michael staff67153 Jun 13 06:54 ./php-5.4.4/ext/sqlite3/sqlite3.c 426064 3782 -rw-r--r-- 1 michael nobody 3872493 Jan 5 2010 ./sqlite-3.6.22/sqlite3.c root@x104:[/data/prj]find . -name sqlite.c -ls 637193 83 -rw-r--r-- 1 michael nobody 84573 Apr 28 2010 ./php-5.2.17/ext/sqlite/sqlite.c 756929 95 -rw-r- 1 michael staff96718 Aug 15 19:05 ./php-5.3.16/ext/sqlite/sqlite.c 553336 95 -rw-r--r-- 1 michael nobody 96804 Jan 1 2011 ./php-5.3.8/ext/sqlite/sqlite.c 119415 95 -rw--- 1 michael staff96712 Jun 13 10:18 ./php-5.3.14/ext/sqlite/sqlite.c root@x104:[/data/prj]lslpp -L | grep sql aixtools.sqlite.rte 3.6.22.0C Fsqlite version 3.6.22 I hope this provides sufficient detail to determine a next step/question. Thanks! p.s. php-5.3.14 and php-5.3.16 also complain about the --without-sqlite3=DIR (and also with --without-sqlite=DIR) root@x104:[/data/prj/php-5.3.16]./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --without-sqlite3=/opt configure: error: sqlite3=/opt: invalid package name root@x104:[/data/prj/php-5.3.16]./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --without-sqlite=/opt configure: error: sqlite=/opt: invalid package name [2012-08-30 05:45:33] mamfelt at gmail dot com with php 5.2.7: # ./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --with-sqlite3=/opt configure finishes with: Thank you for using PHP. Notice: Following unknown configure options were used: --with-sqlite3=/opt Check './configure --help' for available options make completes successfully - however, ext/sqlite was also compiled without fatal errors. Considering the error message (
Bug #62971 [Opn]: cannot get ./configure and make to both complete - one or the other fails
Edit report at https://bugs.php.net/bug.php?id=62971&edit=1 ID: 62971 Updated by: paj...@php.net Reported by:mamfelt at gmail dot com Summary:cannot get ./configure and make to both complete - one or the other fails Status: Open Type: Bug Package:Compile Failure Operating System: AIX PHP Version:5.4.6 Block user comment: N Private report: N New Comment: sqlite3 is enabled by default, use --without-sqlite3 only if you do not want it. PHP also includes libsqlite as well as part of the distribution, so you do not have to install or use the system one. However you can still do it by using: --with-sqlite3=/usr for example. Previous Comments: [2012-08-30 06:03:33] mamfelt at gmail dot com FYI: I understand why the 5.2.17 ./configure complained - no intent on sqlite3, was just sqlite "back then". >From below you can see the version of sqlite I have pre-loaded is 3.6.22 root@x104:[/data/prj]find . -name sqlite3.c -ls 733476 4419 -rw-r- 1 michael staff 4524415 Aug 15 19:05 ./php-5.3.16/ext/sqlite3/libsqlite/sqlite3.c 733446 66 -rw-r- 1 michael staff67532 Aug 15 19:05 ./php-5.3.16/ext/sqlite3/sqlite3.c 292548 4419 -rw-r--r-- 1 michael nobody 4524464 Aug 9 2011 ./php-5.3.8/ext/sqlite3/libsqlite/sqlite3.c 292518 63 -rw-r--r-- 1 michael nobody 63743 Aug 10 2011 ./php-5.3.8/ext/sqlite3/sqlite3.c 741218 4419 -rw-r--r-- 1 michael staff 4524426 Aug 15 06:26 ./php-5.4.6/ext/sqlite3/libsqlite/sqlite3.c 741176 66 -rw-r--r-- 1 michael staff67221 Aug 15 06:26 ./php-5.4.6/ext/sqlite3/sqlite3.c 102500 4419 -rw--- 1 michael staff 4524415 Jun 13 10:18 ./php-5.3.14/ext/sqlite3/libsqlite/sqlite3.c 102438 66 -rw--- 1 michael staff67501 Jun 13 10:18 ./php-5.3.14/ext/sqlite3/sqlite3.c 329718 4419 -rw--- 1 michael staff 4524415 Jun 13 06:54 ./php-5.4.4/ext/sqlite3/libsqlite/sqlite3.c 704810 66 -rw--- 1 michael staff67153 Jun 13 06:54 ./php-5.4.4/ext/sqlite3/sqlite3.c 426064 3782 -rw-r--r-- 1 michael nobody 3872493 Jan 5 2010 ./sqlite-3.6.22/sqlite3.c root@x104:[/data/prj]find . -name sqlite.c -ls 637193 83 -rw-r--r-- 1 michael nobody 84573 Apr 28 2010 ./php-5.2.17/ext/sqlite/sqlite.c 756929 95 -rw-r- 1 michael staff96718 Aug 15 19:05 ./php-5.3.16/ext/sqlite/sqlite.c 553336 95 -rw-r--r-- 1 michael nobody 96804 Jan 1 2011 ./php-5.3.8/ext/sqlite/sqlite.c 119415 95 -rw--- 1 michael staff96712 Jun 13 10:18 ./php-5.3.14/ext/sqlite/sqlite.c root@x104:[/data/prj]lslpp -L | grep sql aixtools.sqlite.rte 3.6.22.0C Fsqlite version 3.6.22 I hope this provides sufficient detail to determine a next step/question. Thanks! p.s. php-5.3.14 and php-5.3.16 also complain about the --without-sqlite3=DIR (and also with --without-sqlite=DIR) root@x104:[/data/prj/php-5.3.16]./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --without-sqlite3=/opt configure: error: sqlite3=/opt: invalid package name root@x104:[/data/prj/php-5.3.16]./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --without-sqlite=/opt configure: error: sqlite=/opt: invalid package name [2012-08-30 05:45:33] mamfelt at gmail dot com with php 5.2.7: # ./configure --prefix=/opt --sysconfdir=/etc --mandir=/usr/share/man --with-sqlite3=/opt configure finishes with: Thank you for using PHP. Notice: Following unknown configure options were used: --with-sqlite3=/opt Check './configure --help' for available options make completes successfully - however, ext/sqlite was also compiled without fatal errors. Considering the error message (--with-sqlite3 unknown) - not surprising. [2012-08-29 20:02:55] mamfelt at gmail dot com Description: Trying to package php 5.4.6 - stuck in logic loop regarding sqlite3. --with-sqlite3=DIR seems to be ignored --without-sqlite3=DIR is not accepted --without-sqlite3 causes ./configure to fail with checking for PDO includes... checking for PDO includes... /data/prj/php-5.4.6/ext configure: error: You've configured extension pdo_sqlite, which depends on extension sqlite3, but you've either not enabled sqlite3, or have disabled it. Test script: --- Example 1. ## configure completes but the embedded sqlite3 attempts to build anyway. This has a compile error that I have not researched. I have sqlite3 in /opt root@x104:[/data/prj/php-5.2.17]ls -l /opt/*/*sql* -rwxr-xr-x 1 root system 2026673 Jun 13 21:52 /opt/bin/sqlite3 -rw-r--r-- 1 root system 268351 Jun 13 21:52 /opt/include/sqlite3.h -rw-r--r-- 1 root sys