Какова цель php74-syspaths и используются ли php74-syspath не только в сочетании с SCL? - PullRequest
0 голосов
/ 08 октября 2019

Я создаю RPM с использованием Jenkins (в существующем проекте - я просто заглянул в исходный код, сам не создал его). Во время «Разрешения зависимостей» установлено, что php74-syspath должны быть установлены.

---> Package php-mysqlnd.x86_64 0:5.4.45-17.el7.remi will be installed
--> Processing Dependency: php-pdo(x86-64) = 5.4.45-17.el7.remi for package: php-mysqlnd-5.4.45-17.el7.remi.x86_64
---> Package php-xml.x86_64 0:5.4.45-17.el7.remi will be installed
---> Package php74-syspaths.x86_64 0:1.0-1.el7.remi will be installed
--> Processing Dependency: php74-runtime(x86-64) = 1.0-1.el7.remi for package: php74-syspaths-1.0-1.el7.remi.x86_64
--> Processing Dependency: php74-php-common(x86-64) for package: php74-syspaths-1.0-1.el7.remi.x86_64
--> Processing Dependency: php74-php-cli(x86-64) for package: php74-syspaths-1.0-1.el7.remi.x86_64
---> Package pkgconfig.x86_64 1:0.27.1-4.el7 will be installed

1) Мне непонятно, почему он устанавливает php74-syspaths. Он не указан в моем файле rpmlist.txt и не указан в моем файле .spec. Кроме того, регистрация не говорит явно, что есть зависимость от php74-syspaths.

2) Что на самом деле является целью php74-syspaths. Насколько я понимаю, * -syspaths используется при использовании «программных коллекций». Но, насколько мне известно, мы не используем scl.

3) Почему php74? Последний стабильный PHP - 7.3. См. https://www.php.net/downloads.php.

4) Это php74-syspaths означает, что php74-php-common установлен. И это позже конфликтует с php-common-7.3.10-1.el7.remi.x86_64, который разыскивается php-mysqlnd. Еще некоторые детали:

php74-syspaths зависит от: php74-php-common

1285 ---> Package php74-syspaths.x86_64 0:1.0-1.el7.remi will be installed
1286 --> Processing Dependency: php74-runtime(x86-64) = 1.0-1.el7.remi for package: php74-syspaths-1.0-1.el7.remi.x86_64
1287 --> Processing Dependency: php74-php-common(x86-64) for package: php74-syspaths-1.0-1.el7.remi.x86_64
1288 --> Processing Dependency: php74-php-cli(x86-64) for package: php74-syspaths-1.0-1.el7.remi.x86_64

php-pdo зависит от php-common.x86_64 0:7.3.10-1.el7.remi:

1466 ---> Package php-pdo.x86_64 0:7.3.10-1.el7.remi will be installed
1467 --> Processing Dependency: php-common(x86-64) = 7.3.10-1.el7.remi for package: php-pdo-7.3.10-1.el7.remi.x86_64
1468 ---> Package php74-php-cli.x86_64 0:7.4.0~rc3-24.el7.remi will be installed
1469 ---> Package php74-php-common.x86_64 0:7.4.0~rc3-24.el7.remi will be installed
1470 --> Processing Dependency: php74-php-json(x86-64) = 7.4.0~rc3-24.el7.remi for package: php74-php-common-7.4.0~rc3-24.el7.remi.x86_64

, поэтому он устанавливает:php-common.x86_64 0:7.3.10-1.el7.remi, тогда как php74-php-common.x86_64 0:7.4.0~rc3-24.el7.remi уже был установлен ранее. Это вызывает конфликт?

1550 ---> Package php-common.x86_64 0:7.3.10-1.el7.remi will be installed
1551 --> Processing Dependency: php-json(x86-64) = 7.3.10-1.el7.remi for package: php-common-7.3.10-1.el7.remi.x86_64

Конфликт показан в конце:

1608 --> Running transaction check
1609 ---> Package dejavu-fonts-common.noarch 0:2.33-6.el7 will be installed
1610 --> Processing Conflict: php74-syspaths-1.0-1.el7.remi.x86_64 conflicts php-common
1611 --> Finished Dependency Resolution
1612 Error: php74-syspaths conflicts with php-common-7.3.10-1.el7.remi.x86_64

Чтобы решить эти проблемы / вопросы, я думаю, что мне нужно провести немало исследований.

1 Ответ

0 голосов
/ 09 октября 2019

пакет syspaths существует, чтобы иметь возможность установить SCL и использовать его в качестве версии системы по умолчанию. Он существует для различных коллекций, включая официальные.

Единственный случай, когда я вижу, где этот пакет извлекается, это то, что для некоторого пакета требуется /usr/bin/php, который является частью этого файла. Такой пакет должен требовать php-cli.

Я постараюсь выяснить, можно ли это улучшить, но на самом деле не вижу, как.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...