| Summary: | Некорректное автоматическое прописывание зависимостей для пакета pdns | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | evseev <evseev> |
| Component: | rpm-build | Assignee: | placeholder <placeholder> |
| Status: | CLOSED NOTABUG | QA Contact: | qa-sisyphus |
| Severity: | normal | ||
| Priority: | P2 | CC: | arseny, glebfm, imz, ldv, placeholder, vt |
| Version: | unstable | ||
| Hardware: | all | ||
| OS: | Linux | ||
| Bug Depends on: | |||
| Bug Blocks: | 10138 | ||
Не надо переопределять %_libdir, find-requires использует этот системный макрос для поиска библиотек, к которым не надо добавлять полный путь. |
pdns.spec содержит строку BuildPreReq: gcc-c++, libstdc++-devel При сборке под Мастером 2.4 это создаёт следующие зависимости: # rpm -qp --requires pdns-2.9.20-alt1.i586.rpm | grep libstdc libstdc++.so.5 libstdc++.so.5(CXXABI_1.2) libstdc++.so.5(GLIBCPP_3.2) libstdc++.so.5(GLIBCPP_3.2.2) При сборке под Сизифом вместо имён пакетов в зависимости попадает коктейль из путей файлов и версий: # rpm -qp --requires pdns-2.9.20-alt1.i586.rpm | grep libstdc /usr/lib/libstdc++.so.6(CXXABI_1.3) /usr/lib/libstdc++.so.6(GLIBCXX_3.4) А должно быть либо так (чтобы совпадало с "rpm --provides libstdc++4.1"): libstdc++.so.6(CXXABI_1.3) libstdc++.so.6(GLIBCXX_3.4) ...либо хотя бы так: /usr/lib/libstdc++.so.6 /usr/lib/libstdc++.so.6 Steps to Reproduce: rpm -U pdns-2.9.20-alt1.i586.rpm Actual Results: ошибка: неудовлетворенные зависимости: /usr/lib/libstdc++.so.6(CXXABI_1.3) нужен для pdns-2.9.20-alt1 /usr/lib/libstdc++.so.6(GLIBCXX_3.4) нужен для pdns-2.9.20-alt1 Expected Results: normal install.