基本上,我想在 Ubuntu 23.04 上安装 Joomla 5。所以当我执行的时候
sudo apt install php8.1-ldap
它给了我一个错误,因为 php8.1-ldap 依赖于 libldap-2.5-0。然后我尝试安装 libldap-2.5-0。无处可寻(apt 中没有候选)
sudo apt install libldap-2.5-0
我发现我的架构正在使用这个命令
dpkg-architecture -q DEB_BUILD_ARCH
并在 Ubuntu 22 中搜索 Ubuntu 软件包。 当我搜索(很多)时,我了解到它可用,但不适用于 Ubuntu 23。它可用于 Ubuntu 22。所以我将其源(22 个)添加到源列表中(对于 apt 源)
sudo gedit /etc/apt/sources.list
deb http://security.ubuntu.com/ubuntu jammy-security main
然后我就能够安装libldap,php8.1-ldap,最后能够执行
composer install
所以我的问题是我所做的是否正确,因为安装 Joomla 的最后一个命令 是
npm ci
导致错误。
npm ERR! command sh -c -- node build/build.js --prepare
您为解决 PHP 8.1 LDAP 安装的依赖性问题所做的工作似乎涉及将以前的 Ubuntu 版本 (22) 中的存储库源添加到 Ubuntu 23.04 (Jammy Jellyfish) 的sources.list 文件中。虽然这可能会解决安装 libldap 和 php8.1-ldap 的直接依赖性问题,但由于潜在的兼容性问题和稳定性问题,这不是推荐或标准方法。
您在安装 Joomla 时遇到的 npm ci 错误可能不一定与您在 apt 源中所做的更改有关。 npm ci 通常处理 Node.js 依赖项和 JavaScript 生态系统,而不是 PHP 或 LDAP。
要解决 npm ci 的问题,隔离您收到的错误消息至关重要。它似乎与构建脚本有关(node build/build.js --prepare)。您可能想检查: