PHP配置错误:请使用--with-iconv = <DIR>指定iconv的安装前缀

omi*_*mic 8 php mamp osx-mavericks

我正在尝试在MAMP上配置PHP 5.5,这篇文章如下:

尝试在Mac OS上的MAMP中使用PECL安装OAUTH时遇到问题.

将我下载的PHP文件夹移入MAMP/bin/php(我也尝试创建/php5.5.14/include/php上面帖子中描述的目录)并运行之后./configure.

我收到一个错误:

checking for iconv support... yes
checking for iconv... no
checking for libiconv... no
configure: error: Please specify the install prefix of iconv with --with-iconv=< DIR >
Run Code Online (Sandbox Code Playgroud)

我在哪里可以"指定安装前缀"或如何解决此问题?

谢谢!!

Mar*_*Fox 16

使用Homebrew:

brew install homebrew/core/libiconv
Run Code Online (Sandbox Code Playgroud)

然后

./configure --with-iconv=$(brew --prefix libiconv)
Run Code Online (Sandbox Code Playgroud)

brew --prefix libiconv 通常评估为 /usr/local/opt/libiconv


cod*_*ard 9

完全按照控制台中的错误说明.它正在寻找iconv但却无法找到它.

./configure --with-iconv=pathToIconv
Run Code Online (Sandbox Code Playgroud)

我想我们应该通过运行"iconv --help"检查是否安装了iconv,如果没有安装,你可以用自制软件安装它,或者你可以将现有文件添加到PATH变量中.我不确定mamp在这种情况下是如何工作的..如果它安装在机器上,PHP应该使用iconv.由于mamp包含自身的方式,它可能以一种奇怪的方式完全填充这种依赖.据我所知,最好的做法是在php安装中内置iconv,这样你就应该努力追踪路径.据我所知,你可以安装它而不用iconv,只要依赖性得到满足,它就会按预期运行.

./configure --without-iconv
Run Code Online (Sandbox Code Playgroud)

  • 谢谢CodeWizard.通过按照建议运行"iconv --help"确认已安装iconv.是的,我尝试了进入iconv的路径,但得到了同样的错误.在OSX中,iconv也作为单个文件包含在/ usr/bin /中.我猜路径'/Applications/MAMP/bin/php/php5.5.14/include/php/ext/iconv/'是否用于iconv安装?(因为它包含'config.m4','iconv.c'和头文件等文件).我在/with-iconv上尝试了/ usr/bin /和上面的安装路径,但没有好运. (2认同)
  • 但是命令"./configure --withouth-iconv"对我有用:在这种情况下可以完成配置,并且pecl的oauth安装也适用于之后!我现在很好,如果有任何关于iconv的新进展,我会更新这篇文章. (2认同)

jam*_*mix 7

我在MacPorts上安装了iconv,因此可执行文件位于/opt/local/bin/iconv.指定./configure --with-iconv=/opt/local了诀窍.