1 (26.01.2015 21:21:01 отредактировано veephtc)

Здравствуйте!

Собрал из исходников php-5.3.29, установил так же fastcgi, сайты работают.
Теперь есть необходимость установить zabbix, но вместе с ним CentOS предлагает установить зависимости в которых включено:

 
 php                      x86_64  5.3.3-40.el6_6    updates               1.1 M
 php-bcmath               x86_64  5.3.3-40.el6_6    updates                37 k
 php-cli                  x86_64  5.3.3-40.el6_6    updates               2.2 M
 php-common               x86_64  5.3.3-40.el6_6    updates               527 k
 php-gd                   x86_64  5.3.3-40.el6_6    updates               109 k
 php-mbstring             x86_64  5.3.3-40.el6_6    updates               458 k
 php-mysql                x86_64  5.3.3-40.el6_6    updates                84 k
 php-pdo                  x86_64  5.3.3-40.el6_6    updates                78 k
 php-xml                  x86_64  5.3.3-40.el6_6    updates               106 k

Почему CentOS не видит уже установленных зависимостей ?

ps Я дилетант, учусь, буду очень благодарен помощи =)
pss Гуглить пробовал - видимо формулирую как то не так ))
psss В предложенной установке зависимостей я вижу updates, но обновлять я категорически не хочу - больших трудов мне стоило всё это дело настроить.

2

rpm не "смотрит" ни на файлы, ни ещё куда-либо. Только в свою внутреннюю базу данных. Одни пакеты предоставляют абстрактные features, другие их требуют. Вот и весь механизм зависимостей. Вы можете опакетить свою сборку и прописать там нужные Provides - явно или автоматически (rpmbuild и такое умеет). И только тогда другие пакеты его  "увидят"

3

Вот поэтому и не следует устанавливать программы иначе как из пакетов в пакетных дистрибутивах.

4

Огромное спасибо!

5

veephtc пишет:

Собрал из исходников php-5.3.29

есть src.rpm пакет, зачем из исходников собирать?

veephtc пишет:

больших трудов мне стоило всё это дело настроить.

а еще больших трудов это будет обслуживать.

It is good day to die ...
MS Windows 10
Заметки о главном...

6

veephtc пишет:

Почему CentOS не видит уже установленных зависимостей ?

потому что вы собирали из исходников. Вы делаете из свой системы слакварь (это такая ОС, в которой зависимости разруливает администратор).

veephtc пишет:

В предложенной установке зависимостей я вижу updates, но обновлять я категорически не хочу - больших трудов мне стоило всё это дело настроить.

1. я-бы сразу Slackware поставил
2. либо ставил кошерные пакеты, а не занимался ерундой
3. есть третий вариант: самому сделать кошерные пакеты(по спекам дистрибутива), и следить за ними самостоятельно.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

7

drBatty пишет:
veephtc пишет:

Почему CentOS не видит уже установленных зависимостей ?

1. я-бы сразу Slackware поставил

А я бы fedora. Та же система, только всё самое свежее:

 Консоль:
# rpm -q php
php-5.6.4-2.fc21.x86_64
Или вам. наоборот, старая версия требуется?

8

Как бы да, возникает вопрос: В чём тогда смысл использования CentOS 6, если всё равно ставить сторонние программы (к тому же из исходников)?
Использовать тогда Федору - и никаких проблем.

9 (27.01.2015 12:21:31 отредактировано )

s.xbatob пишет:

Или вам. наоборот, старая версия требуется?

Скорее всего - да
Даже в сусе 13.1 оно новее:

 Консоль:
# zypper se -si php
С | Имя                    | Тип   | Версия      | Архитектура | Репозиторий                 
--+------------------------+-------+-------------+-------------+-----------------------------
i | php5                   | пакет | 5.4.20-34.3 | i586        | openSUSE-13.1-Update

Vascom пишет:

В чём тогда смысл использования CentOS 6

тут есть вариант: "на тебе вот это и разруливай как хочешь, а менять не смей" =))

- Пап, а вирусы под линукс есть?
- Есть, но всего 5, и их сначала нужно откомпилировать под свою систему, дать права на запуск и запустить.
Как сделать и разместить скриншот || Прежде чем создавать тему

10

diablopc пишет:

тут есть вариант: "на тебе вот это и разруливай как хочешь, а менять не смей" =))

Нас заказчики тоже всё время пытаются нагнуть на смену дистрибутива. Натыкаются на жёсткий отказ, и так уже четвёртый год. Обоснование простое: вам шашечки или ехать? Если шашечки, то - пожалуйста, ознакомьтесь с ценником на переезд. На этом разговор сразу заканчивается.

11

Странно. Я думал что как раз "шашечки" в данном случае - это впиливание нестандартных версий ПО в дистрибутив типа CentOS и попытка со всем этим взлететь. А "ехать" - это установить последнюю версию Федора и работать.

Переезд конечно отдельная тема, значит изначально неправильно была выбрана ОС или стратегия её использования.

12

Vascom пишет:

Я думал что как раз "шашечки" в данном случае - это впиливание нестандартных версий ПО в дистрибутив типа CentOS и попытка со всем этим взлететь.

это с каких пор пыха версии php-5.3.29 не стандартная?

It is good day to die ...
MS Windows 10
Заметки о главном...

13

Не стандартная для конкретного дистрибутива.

Типа зачем ставить супер-пупер энтерпрайзную стабильную ОС и накатывать на неё что-то скомпилированное ручками неизвестно откуда?

14

s.xbatob пишет:

php-5.6.4-2.fc21.x86_64

 Консоль:
$ ls /var/log/packages/php*
/var/log/packages/php-5.4.36-i486-1

s.xbatob пишет:

Или вам. наоборот, старая версия требуется?

слака тем и хороша, что можно поставить любую версию, хоть старую, хоть новую. По дефолту ставится последняя из стабильных. php-5.6 она вроде как тестовая, нет?

Vascom пишет:

Использовать тогда Федору - и никаких проблем.

ну "самые новые" тоже плохо для продакшена и для тестового сервера. На компьютере разработчика нужно не "самую новую", а как в продакшене, т.е. какую нужно. Почему я и советовал слаку, кстати.

В продакшене конечно слаку юзать не удобно, а удобнее RHEL/CentOS или Debian. Зачем в продакшен ставить что-то из сырцов — мне непонятно.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

15

drBatty пишет:

Зачем в продакшен ставить что-то из сырцов — мне непонятно.

ну к прмеиру у memcached (не путать с php-memcache) из стандатрных сборок нет поддержки репликации, а в продакшена она порой нужна, приходиться собирать пакет для конкретного дисрибутива.

Vascom пишет:

Типа зачем ставить супер-пупер энтерпрайзную стабильную ОС и накатывать на неё что-то скомпилированное ручками неизвестно откуда?

почеум сразу не известно откуда? , просто проект который есть у ТС написан на 5.3 пыхи, а в версиях 5.3.29 есть исправления, а перейти на версию выше, надо еще 3 землекопа :-)

drBatty пишет:

как в продакшене, т.е. какую нужно

плюсую)

It is good day to die ...
MS Windows 10
Заметки о главном...

16

Ох уж этот php!
Хорошо у нас специалист по php опытный, всё что требуется правит под существующую версию. Да - под последнюю!

17

i2ks пишет:

приходиться собирать пакет для конкретного дисрибутива.

пакет — совсем другое дело.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

18

i2ks пишет:

ну к прмеиру у memcached (не путать с php-memcache) из стандатрных сборок нет поддержки репликации, а в продакшена она порой нужна, приходиться собирать пакет для конкретного дисрибутива.

или переходить на redis (давно уже пора) ab

По теме:
Если надо собрать из сорсов, надо собирать пакет (make && make rpm) а не делать make install. Тогда пакет попадет в rpmdb и yum не будет так ругаться (хотя и не факт что не будет проблем с жесткими зависимостями)

19

dyasny пишет:

make rpm

это конечно если есть такая цель в ./configure

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

20

drBatty пишет:

это конечно если есть такая цель в ./configure

само собой, но надеюсь должна быть, это вполне стандартный код а не экзотика какая-нибудь

21

dyasny, никогда не попадалась такая цель.

drBatty пишет:

./configure

Makefile же.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

22

dyasny пишет:

само собой, но надеюсь должна быть, это вполне стандартный код а не экзотика какая-нибудь

угу, это хороший тон добавлять цель rpm.

yars пишет:

Makefile же.

Makefile создаётся скриптом ./configure, который проверяет разные зависимости и прочее.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

23

drBatty, нет, он не генерирует Makefile с нуля, а лишь делает подстановки вместо переменных в заготовке. А цели должен описать уже разработчик программы.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

24

yars пишет:

нет, он не генерирует Makefile с нуля, а лишь делает подстановки вместо переменных в заготовке.

я в курсе.

yars пишет:

А цели должен описать уже разработчик программы.

естественно. Но НЕ в Makefile.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

25

drBatty, а где же еще? Если мы вызываем make rpm, то цель rpm должна быть описана в Makefile.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

26

yars пишет:

Если мы вызываем make rpm, то цель rpm должна быть описана в Makefile.

Makefile НЕ входит в поставку большинства программ, а делается из Makefile.in скриптом ./configure. Этот Makefile.in тоже делается из какого-то другого файла, сейчас на вскидку не вспомню какого именно. А, из Makefile.am. Вот в Makefile.am и нужно прописывать rpm.

К сожалению, не всегда такая цель имеется.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

27

drBatty, я знаю, что не входит. И стандартной цели rpm в документации autotools не значится, так что это таки прихоть разработчика. И таки да, цель rpm будет в результирующем Makefile, если в заготовку *.{in,am} ее кто-то вписал.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Slackware64-current/Xfce/Lenovo G580

28

yars, ну нам в Slackware это и не нужно bq

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

29

dyasny пишет:

или переходить на redis (давно уже пора) ab

да с редиской так же грабли бывают, проходили уже :-)

It is good day to die ...
MS Windows 10
Заметки о главном...

30

i2ks пишет:

да с редиской так же грабли бывают, проходили уже :-)

да они везде бывают, просто он в плане фичеров более продвинут