mirror of
https://github.com/php/php-src.git
synced 2026-03-24 00:02:20 +01:00
README: Fix non-existent iconv in macOS instruction (#19475)
Follows-up 22e444c5c7 (GH-18670). There is currently no formula called
"iconv". [1][2]
```
$ brew install iconv
Warning: No available formula with the name "iconv". Did you mean icon or cconv?
```
There package is called "libiconv". [3]
Once installed, `./configure` still fails due to a discovery issue.
```
$ ./configure --enable-debug
…
checking for libiconv... no
configure: error: Please specify the install prefix of iconv with --with-iconv=<DIR>
```
In 2020, as part of the switch from Intel to ARM, Homebrew adopted /opt
as the standard location instead of /usr/local. [4][5]
Rather than complicating the README with a mandatory `--with-iconv`
path (or --without-iconv) for macOS users, improve the discovery
to support Homebrew's new location.
[1]: https://brew.sh/
[2]: https://github.com/Homebrew/homebrew-core/.
[3]: https://formulae.brew.sh/formula/libiconv
[4]: https://apple.stackexchange.com/a/437622/33762
[5]: https://docs.brew.sh/FAQ#why-is-the-default-installation-prefix-opthomebrew-on-apple-silicon
This commit is contained in:
@@ -55,7 +55,7 @@ sudo dnf install re2c bison autoconf make libtool ccache libxml2-devel sqlite-de
|
||||
On MacOS, you can install these using `brew`:
|
||||
|
||||
```shell
|
||||
brew install autoconf bison re2c iconv libxml2 sqlite
|
||||
brew install autoconf bison re2c libiconv libxml2 sqlite
|
||||
```
|
||||
|
||||
or with `MacPorts`:
|
||||
|
||||
12
build/php.m4
12
build/php.m4
@@ -1796,7 +1796,17 @@ AC_DEFUN([PHP_SETUP_ICONV], [
|
||||
|
||||
dnl Check external libs for iconv funcs.
|
||||
AS_VAR_IF([found_iconv], [no], [
|
||||
for i in $PHP_ICONV /usr/local /usr; do
|
||||
|
||||
dnl Find /opt/homebrew/opt/libiconv on macOS
|
||||
dnl See: https://github.com/php/php-src/pull/19475
|
||||
php_brew_prefix=no
|
||||
AC_CHECK_PROG([BREW], [brew], [brew])
|
||||
if test -n "$BREW"; then
|
||||
AC_MSG_CHECKING([for homebrew prefix])
|
||||
php_brew_prefix=$($BREW --prefix 2> /dev/null)
|
||||
fi
|
||||
|
||||
for i in $PHP_ICONV $php_brew_prefix/opt/libiconv /usr/local /usr; do
|
||||
if test -r $i/include/gnu-libiconv/iconv.h; then
|
||||
ICONV_DIR=$i
|
||||
ICONV_INCLUDE_DIR=$i/include/gnu-libiconv
|
||||
|
||||
Reference in New Issue
Block a user