Bug 25431 - libcurl link-time version is older than compile-time version
Summary: libcurl link-time version is older than compile-time version
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: python-module-pycurl (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Vitaly Lipatov
QA Contact: qa-sisyphus
URL:
Keywords:
: 38235 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-04-12 11:51 MSK by manowar@altlinux.org
Modified: 2020-09-20 11:42 MSK (History)
22 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description manowar@altlinux.org 2011-04-12 11:51:50 MSK
Fatal Python error: pycurl: libcurl link-time version is older than compile-time version
/usr/bin/miro: line 27: 18079 Аварийный останов         miro.real "$@"

Проблема обнаружилась после установки Miro из Сизифа в свежеустановленный «Кентавр». Обновление libcurl решает проблему. Но мне кажется, что пакет с pycurl должен сам вытягивать по зависимостям ту версию libcurl, которая ему нужна.

Сейчас ограничение по версии вроде бы присутствует:
$ rpm -q --requires python-module-pycurl | grep libcurl
libcurl.so.4 >= set:mhU60jsKB6XjqoGeeqT0EGIlIgFNsZhSM14KXZi1jPgii5ByrMJ8DDEBPgJAqDJRi4JDHo35Za8spXy

Однако я, к сожалению, не знаю, обновлялся ли pycurl вместе с libcurl.
Comment 1 real@altlinux.org 2011-04-12 12:11:22 MSK
pycurl обновлялся ПОСЛЕ libcurl, что хорошо видно на prometheus.altlinux.org.

NOTABUG?
Comment 2 Ivan Fedorov 2011-04-12 14:22:40 MSK
Тут скорее всего придется по старинке проставить жесткую зависимость на версию libcurl, а то и на релиз сборки.

Просто кроме нас в rpm таких проверок по символам никто не делает, и авторы pycurl решили делать проверку версии в runtime. При отсутствии внешней проверки зависимостей это единственный выход.

Как второй вариант - выпилить эту проверку, или сделать просто warning, а не fatal.
Comment 3 Vitaly Lipatov 2011-04-14 21:10:07 MSK
Я не могу оценить, насколько важно для pycurl точное соответствие версий. Думаю, что достаточно pycurl >= libcurl, а значит, достаточно автоматической зависимости + замена Fatal на Warning.
Comment 4 Vitaly Lipatov 2018-11-26 04:59:21 MSK
Не наблюдаю проблемы.
Comment 5 Dmitry V. Levin 2018-11-26 05:31:34 MSK
Ничего не изменилось.

$ git show 7.43.0.2-alt1:pycurl/src/module.c |sed -n '/Check the version/,/^$/p'
    /* Check the version, as this has caused nasty problems in
     * some cases. */
    vi = curl_version_info(CURLVERSION_NOW);
    if (vi == NULL) {
        PyErr_SetString(PyExc_ImportError, "pycurl: curl_version_info() failed");
        goto error;
    }
    if (vi->version_num < LIBCURL_VERSION_NUM) {
        PyErr_Format(PyExc_ImportError, "pycurl: libcurl link-time version (%s) is older than compile-time version (%s)", vi->version, LIBCURL_VERSION);
        goto error;
    }
Comment 6 Vitaly Lipatov 2020-09-20 11:01:44 MSK
*** Bug 38235 has been marked as a duplicate of this bug. ***
Comment 7 Repository Robot 2020-09-20 11:42:27 MSK
python3-module-pycurl-7.43.0.6-alt1 -> sisyphus:

 Sun Sep 20 2020 Vitaly Lipatov <lav@altlinux.ru> 7.43.0.6-alt1
 - new version 7.43.0.6 (with rpmrb script)
 - require libcurl not older than was at building time (ALT bug 25431)