|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2021-02-03 13:15 UTC] cmb@php.net
-Status: Open
+Status: Feedback
-Assigned To:
+Assigned To: cmb
[2021-02-03 13:15 UTC] cmb@php.net
[2021-02-14 04:22 UTC] php-bugs at lists dot php dot net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Nov 01 17:00:02 2025 UTC |
Description: ------------ dev failed to build under OS X 10.11 when generating phar.phar. ``` $ rm -rf /opt/php7 $ ./buildconf $ ./configure --prefix=/opt/php7 --enable-opcache $ make ... ... ... Generating phar.phar Parse error: syntax error, unexpected end of file in /Users/XX/box/php-src/ext/phar/phar.php on line 3 make: *** [ext/phar/phar.phar] Error 255 ``` I checked the generated phar.php, which looks like an error message output elsewhere. ``` $ cat /Users/XX/box/php-src/ext/phar/phar.php Parse error: syntax error, unexpected ''<'' (T_ENCAPSED_AND_WHITESPACE), expecting '(' in /Users/XX/box/php-src/ext/phar/build_precommand.php on line 2 ``` build_precommand.php looks like totally valid: ``` $ cat /Users/XX/box/php-src/ext/phar/build_precommand.php #!/usr/bin/php <?php echo '<'.'?php';?> /** @file phar.php * @ingroup Phar * @brief class Phar Pre Command * @author Marcus Boerger * @date 2007 - 2008 * * Phar Command */ foreach(array("SPL", "Reflection", "Phar") as $ext) { if (!extension_loaded($ext)) { echo "$argv[0] requires PHP extension $ext.\n"; exit(1); } } <?php $classes = array( 'DirectoryTreeIterator', 'DirectoryGraphIterator', 'InvertedRegexIterator', 'CLICommand', 'PharCommand', ); foreach($classes as $name) { echo "if (!class_exists('$name', 0))\n{\n"; $f = file(dirname(__FILE__) . '/phar/' . strtolower($name) . '.inc'); unset($f[0]); $c = count($f); while ($c && (strlen($f[$c]) == 0 || $f[$c] == "\n" || $f[$c] == "\r\n")) { unset($f[$c--]); } if (substr($f[$c], -2) == "\r\n") { $f[$c] = substr($f[$c], 0, -2); } if (substr($f[$c], -1) == "\n") { $f[$c] = substr($f[$c], 0, -1); } if (substr($f[$c], -2) == '?>') { $f[$c] = substr($f[$c], 0,-2); } while ($c && (strlen($f[$c]) == 0 || $f[$c] == "\n" || $f[$c] == "\r\n")) { unset($f[$c--]); } echo join('', $f); echo "\n}\n\n"; } echo 'new PharCommand($argc, $argv);'."\n"; ?> ```