Назад | Перейти на главную страницу

Включите SCL python27, чтобы другие RPM могли его видеть

Попытка создать RPM, использующий Python 2.7 на машине RHEL 6. Я использую SCL, чтобы включить Python2.7 и построить с ним RPM. Однако, когда я пытаюсь установить этот RPM в другой системе после включения Python 2.7 (scl enable python27 bash, затем yum localinstall myrpm.rpm), я получаю сообщение об ошибке:

Requires: python(abi) = 2.7
Installed: python-2.6.6-64
    python(abi) = 2.6

Есть ли что-то, что мне нужно добавить в файл спецификации при создании RPM, чтобы исправить эту проблему. Или проблема связана со средой на машине, на которой я пытаюсь установить RPM?

rpmbuild добавляет требования Python автоматически из используемой версии python. Таким образом, он добавлял python (abi) = 2.7 в список требований RPM. Однако при использовании python27, который использовал scl, предоставляет python27-python. Проблема была решена добавлением строки

AutoReqProv: нет

в файл спецификации в RPM. Машине, на которой был установлен rpm, не нужно было впоследствии проверять требования python (abi), а вместо этого проверяли, что был предоставлен python27-python.