Как посмотреть, построен ли бинарный файл git против openssl или gnutls?

Я пытаюсь отладить странную проблему с git clone, протоколом https, одного конкретного репозитория, используя Ubuntu с корпоративным прокси. То же самое работает в CentOS, дистрибутивах Fedora, но не в Ubuntu или Debian в нашей среде.

Очевидно, что в пакетах Ubuntu git построен против gnutls, но на других платформах против openssl. Однако сборка из источников, даже в Ubuntu, использует openssl в соответствии с этим.

Есть ли способ для меня, чтобы проверить из данной установки git, против которой он скомпилирован? Какой-то вывод, что бы сказать мне?

Эти вопросы связаны между собой, но оба говорят об изменении его времени выполнения или времени сборки - на данный момент мне просто понадобится информация о том, какой это вопрос.

1 ответ

Решение
$ cd /usr/lib/git-core
$ ./git --version
git version 1.9.1
$ ldd git-http-fetch | grep libcurl
    libcurl-gnutls.so.4 => /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 (0x00007f8d5dcdf000)

$ cd /usr/libexec/git-core
$ ./git --version
git version 2.8.1
$ ldd git-http-fetch | grep libcurl
    libcurl-gnutls.so.4 => /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 (0x00007f6bd1e42000)

Так что, очевидно, и моя версия операционной системы, и моя скомпилированная версия против gnutls.

Редактировать: это то, как выглядит вывод openssl при запуске той же команды, нет libcurl-gnutls, но

libcurl.so.4 => /usr/lib/x86_64-linux-gnu/libcurl.so.4 (0x00007fe96267e000)
Другие вопросы по тегам