作曲家安装,分段错误



我无法运行命令编辑器安装。我得到的只是立即失败并出现分段错误,php 问题?

  • 全新的MacBook Prop
  • 操作系统 - 莫哈韦 10.14.5
  • 菲律宾比索 - 7.3.7
  • 符号 - 4.6.0
  • PHP 是使用 brew 安装的,它是当前的稳定版本。
  • Symfony是从他们的网站上安装的,通过curl使用安装程序。
  • 作曲家我已经为该项目下载了本地。

组件安装的输出:

Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Prefetching 96 packages 🎵 💨
- Downloading (0%)[1]    4278 segmentation fault  composer install

作曲家 -vvv 安装的输出:

帕斯特宾链接

我已经成功地让它在 Manjaro 和 Ubunutu 上运行,运行 PHP 7.3.7。

最可靠的信息来源来自 github 上的这个问题,表明这是一个 PHP 问题,可能是版本/构建问题。我的项目依赖于 PHP 7.2^。

更新- 已与brew install php@7.2一起检查。同样的问题。

更新2- 找到此线程,尝试解决方案,但没有运气

更新 3- 我使用--no-plugins标志运行composer install,它现在正在下载依赖项。在此之前我也跑过clear-cache,我不确定他们是携手合作还是只是--no-plugins.这指向我的一个 PHP 插件,默认情况下安装它会导致内存违规问题。哪一个?谁知道呢。

更新4- 下载完成后仍然无法正常工作,我不得不在没有--no-plugin标志的情况下再次运行composer install。似乎正在工作。

我想我已经找到了解决方案。希望这对某人有所帮助:

我带着--no-plugins旗跑composer install

下载完成后,我不得不在没有--no-plugins标志的情况下再次运行composer install

编辑:这很好,直到添加依赖项时发现其他问题!事实证明卷曲是问题所在。

要解决,

brew remove curl-openssl --ignore-dependencies curl-openssl
brew install curl-ssl

就我而言,当我增加内存限制时,问题已解决。php.ini将限制设置为 256MB,但是,我发现 brew 安装的某些 ini 已覆盖该限制并强制其为 128MB。

我将在下面列出我为解决问题而遵循的路径。

第 1 步— 计算实际内存限制:

php -i | grep memory_limit

第 2 步— 查找已用php.ini文件路径:

php -i | grep "Loaded Configuration File"

步骤1 中的memory_limit与我在步骤 2 中找到的文件中的memory_limit不匹配。

我进一步查看,发现PHP加载的以下配置文件,结果是将memory_limit覆盖为128MB:

/usr/local/etc/php/7.2/conf.d/php-memory-limits.ini

第 3 步— 我禁用了它:

mv /usr/local/etc/php/7.2/conf.d/php-memory-limits.ini /usr/local/etc/php/7.2/conf.d/php-memory-limits.ini.bak

然后终于确认步骤1返回我设置的正确memory_limit,即256MB。

希望它能帮助那些有同样问题的人。

注意:您的安装路径可能会有所不同,我在这里放置了与我的情况相匹配的示例,但您应该明白这一点。

我使用作曲家 2.x 并导致此问题 我的同事通过以下方式帮助我解决这个问题:

作曲家自我更新 --1

然后

作曲家更新 或 作曲家转储自动加载

如果你想让作曲家回到 2.x:

作曲家自我更新 --回滚

在 ph.ini p 中禁用 xdebug 扩展名并启用文件操作缓存(opcache.enable_cli = 1opcache.file_cache设置为本地目录)后,我遇到了这个问题。似乎在禁用 xdebug 时必须删除这些 opcache 文件,否则缓存的 php 文件的任何执行都会导致分段错误(这是 PHP 7.4.10)。

只需将PHP版本从php 7.3更改为7.4 现在它为我工作

如果没有任何解决方案有效,请尝试禁用(如果您已启用 CLI 的操作缓存)opcache.enable_cli=1在你的php.ini.

这是参考资料。

内存故障。如果正在运行作曲家也尝试使用的文件夹或服务,则可能会发生这种情况。确保在运行作曲家之前关闭了任何此类文件夹窗口和应用程序。

相关内容

  • 没有找到相关文章

最新更新