|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #80435 Bus Error compiling phar.phar on Apple M1
Submitted: 2020-11-27 20:59 UTC Modified: 2020-11-30 16:33 UTC
Avg. Score:4.8 ± 0.4
Reproduced:5 of 5 (100.0%)
Same Version:1 (20.0%)
Same OS:5 (100.0%)
From: cja987 at gmail dot com Assigned:
Status: Open Package: Compile Failure
PHP Version: 8.0Git-2020-11-27 (Git) OS: macOS 11
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2020-11-27 20:59 UTC] cja987 at gmail dot com
Using the compile command shown in the test script below, compilation proceeds normally and it even builds some of the SAPIs, but once it gets to phar, things go sideways:

Generating phar.php
Generating phar.phar
PEAR package PHP_Archive not installed: generated phar will require PHP's phar extension be enabled.
make: *** [ext/phar/phar.phar] Bus error: 10

Test script:
make distclean; ./buildconf && PATH=/opt/homebrew/opt/bison/bin:$PATH ./configure --with-iconv=/opt/homebrew/opt/libiconv && make -j10 YACC=/opt/homebrew/opt/bison/bin/bison

# The above shows another minor bug: I should not have to set YACC, 
# but the makefile sets it to just "bison" rather than the full path,
# which causes it to find the obsolete system bison in the path instead.


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2020-11-27 21:01 UTC] cja987 at gmail dot com
As requested, these values from the makefile:

PHP_PHARCMD_SETTINGS = -n -d 'open_basedir=' -d 'output_buffering=0' -d 
'memory_limit=-1' -d phar.readonly=0

PHP_PHARCMD_BANG = `$(top_srcdir)/build/shtool echo -n -- "$(INSTALL_ROOT)$(bindir)/$(program_prefix)php$(program_suffix)$(EXEEXT)";`
 [2020-11-30 14:54 UTC]
I suspect the build might be entirely borked, and the phar generation is just the first part that actually uses the produced binary.

Does running `sapi/cli/php -v` work? If so, does running `sapi/cli/php run-tests.php Zend -j8` produce any failures?
 [2020-11-30 16:33 UTC] cja987 at gmail dot com
sapi/cli/php -v does work, but it does immediately get run over by the bus (error)  when running the test suite.  I can't convince gdb to install either, so there's not a lot that's debuggable.  Homebrew does build php successfully, and it appears it even applies a patch or two, so I'll work backwards from that.
 [2021-05-08 01:15 UTC] hao dot sun at arm dot com
In my Apple M1 machine, using the method mentioned in this link( would fix this bug.

$ brew install pcre2
$ ./configure --with-external-pcre=$(brew --prefix pcre2)
$ make
$ make test

Note: the link is in Japanese. you may need to translate it to English.
PHP Copyright © 2001-2021 The PHP Group
All rights reserved.
Last updated: Tue Jun 22 07:01:23 2021 UTC