相关疑难解决方法(0)

在MacOs上安装xdebug Mojave - 找不到'php.h'文件

我尝试在MacOs Mojave上安装xdebug但是得到了这个错误

/private/tmp/pear/install/xdebug/xdebug.c:25:10: fatal error: 'php.h' file not found
Run Code Online (Sandbox Code Playgroud)

命令行工具已安装.

php xdebug macos-mojave

21
推荐指数
3
解决办法
8503
查看次数

PHPUnit 总是输出“没有执行测试!” 在 MacOS 大苏尔

在尝试运行任何PHPUnit 测试时,我总是No tests executed!在我的 MacOS 机器上收到一条消息。在这台特定机器上重现的一种简单方法是安装 Laravel 的新实例并运行默认测试:

$ composer create-project --prefer-dist laravel/laravel blog
$ cd blog
$ vendor/bin/phpunit

=> No tests executed!
Run Code Online (Sandbox Code Playgroud)

预期的输出将是OK (2 tests, 2 assertions)

据我所知,这不是 PHPUnit 配置问题,因为默认的 Laravel 代码应该可以工作,其他框架和我尝试的任何代码都会出现同样的问题,不同的 PHPUnit 版本(8.5 和 9.4)也存在同样的问题上面列出的确切步骤会在 Ubuntu VM 以及另一台运行 Catalina 的 Mac 上返回预期的输出。

实际上,我怀疑这不是 PHPUnit 问题,而是 MacOS 问题PHP 配置问题,以后可能会以其他形式出现在其他工具或项目中。

PHPUnit 曾经在这台机器上工作得很好,但是我实际上已经有几个星期/几个月没有使用它了。自从我上次(成功)在这台 Mac 上使用任何 PHPUnit 以来,唯一改变的是升级到 MacOS Big Sur 并安装(然后卸载)Homebrew。

问题出现 PHPUnit 找不到任何测试套件。在新的 Laravel 安装中运行时vendor/bin/phpunit …

php macos phpunit macos-big-sur

11
推荐指数
1
解决办法
1127
查看次数

在 Mac OS Catalina 中安装 imagick 扩展:php_imagick.h:42:10:致命错误:找不到“php.h”文件

我已经按照这些步骤在我的 Mac OS Catalina 计算机中安装imagemagick和 php 扩展imagick,但我似乎找不到方法。

我总是试图安装时,下面的错误imagick$ sudo pecl install imagick

php_imagick.h:42:10: fatal error: 'php.h' file not found
#include "php.h"
         ^~~~~~~
1 error generated.
make: *** [imagick_file.lo] Error 1
ERROR: `make' failed
Run Code Online (Sandbox Code Playgroud)

我正在使用php.7.3.11.

显然 Mac OS X Catalina 决定将标题移动到另一个文件夹,现在它似乎没有找到它们。

我一直在阅读这个答案,但似乎解决方案太长了,不可能是真的。没有其他更简单直接的方法了吗?

似乎其他人设法以更少的麻烦为其他扩展修复它。但是,我不太确定 Imagick 的步骤是否完全相同......

php imagemagick imagick php-7.3

8
推荐指数
1
解决办法
4589
查看次数

如何在Mac OS Mojave上编译和使用php扩展

我刚安装了新的OSX Mojave,你知道它预装了PHP 7.1.19,只有几个扩展可用.

首先,我不是自制软件或任何其他软件包管理器的粉丝,也不是禁用安全工具,即csrutil.

我已经成功编译了intl扩展,但是由于代码签名问题,apache没有加载它:

PHP Startup: Unable to load dynamic library 'intl.so' - dlopen(intl.so, 0x0009): code signature in (intl.so) not valid for use in process: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed. in Unknown on line 0
Run Code Online (Sandbox Code Playgroud)

有没有办法签署新编译的扩展,可能使用ad-hoc签名方法或其他什么?

我知道有很多关于这个问题的其他主题但是所有这些都没有得到答复,或者至多建议使用自制软件来解决问题!

谢谢

php apache macos macos-mojave

6
推荐指数
1
解决办法
796
查看次数

Mac Catalina 安装 Xdebug

我一整天都在努力让 xdebug 工作。我已经尝试完全重新安装自制软件,清除 php 并安装最新版本,重新安装 apache(如下:https : //getgrav.org/blog/macos-catalina-apache-multiple-php-versions),现在尝试使用 pecl 以及从源 xdebug 安装,我继续收到错误。尝试通过 pecl 安装:

sudo pecl install xdebug
Password:

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in Validator.php on line 1933

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /usr/local/pear/share/pear/PEAR/PackageFile/v2/Validator.php on line 1933
WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update
Cannot install, php_dir for channel "pecl.php.net" …
Run Code Online (Sandbox Code Playgroud)

macos xcode xdebug macos-catalina

3
推荐指数
1
解决办法
5942
查看次数