Автор Тема: dotnet GLIBCXX_3.4.22 not found  (Прочитано 2789 раз)

Оффлайн Zermond

  • Давно тут
  • **
  • Сообщений: 25
dotnet GLIBCXX_3.4.22 not found
« : 20.03.2017 16:52:49 »
Появилась поддержка dotnet (https://www.altlinux.org/Dotnet_core)
Но у меня не запускается из-за отсутствие конкретной либы:

Failed to load /opt/dotnet/shared/Microsoft.NETCore.App/1.1.1/libhostpolicy.so, error: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by /opt/dotnet/shared/Microsoft.NETCore.App/1.1.1/libhostpolicy.so)
An error occurred while loading required library libhostpolicy.so from [/opt/dotnet/shared/Microsoft.NETCore.App/1.1.1]

strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
Спойлер
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_DEBUG_MESSAGE_LENGTH

о системе:
ALT Workstation 8.1

Linux Core_Alt64.localdomain 4.4.16-std-def-alt0.M80P.1 #1 SMP Thu Jul 28 03:44:48 UTC 2016 x86_64 GNU/Linux
 rpm -qa | grep -i libstdc
libstdc++6-5.3.1-alt3





Онлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #1 : 20.03.2017 17:09:30 »
Очевидно, что собрано со слишком новой glibc (есть в Sisyphus). Будет ли glibc в p8 обновляться, не знаю.
« Последнее редактирование: 20.03.2017 17:11:06 от asy »

Оффлайн Zermond

  • Давно тут
  • **
  • Сообщений: 25
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #2 : 20.03.2017 17:15:24 »
Спасибо. А какой дистрибутив можно взять, где glibc будет обновлен до актуальной для dotnet версии?

/upd. Увидел измененное сообщение про сизиф, буду пробовать.

« Последнее редактирование: 20.03.2017 17:40:46 от Zermond »

Онлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #3 : 20.03.2017 17:32:18 »
Спасибо. А какой дистрибутив можно взять, где glibc будет обновлен до актуальной для dotnet версии?

/upd. Увидел измененное сообщение про сизиф, буду пробовать.
То есть стоп. libstdc++.so.6 - это же не glibc. Но суть не меняется, всё равно новее только в Сизифе.

В принципе, можно посмотреть, что получится при точечном обновлении из Сизифа:

apt-repo rm all
apt-repo add sisyphus
apt-get update
apt-get install libstdc++6

Потом вернуть:
apt-repo rm all
apt-repo add p8

Но libstdc++6 кое-что ещё с собой тащит. Может быть, будут какие-нибудь нехорошие последствия.

Оффлайн Zermond

  • Давно тут
  • **
  • Сообщений: 25
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #4 : 20.03.2017 18:27:32 »
Спасибо, asy!

Вопрос касательно дефолтного репозитория: а когда станет известно, обновится там пакет или нет? dotnet планируем использовать на продакшн сервере, поэтому не хотелось бы тянуть пакеты из не стабильной ветки.

Онлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #5 : 20.03.2017 19:33:04 »
Вопрос касательно дефолтного репозитория: а когда станет известно, обновится там пакет или нет? dotnet планируем использовать на продакшн сервере, поэтому не хотелось бы тянуть пакеты из не стабильной ветки.
Я бы предположил, что вряд ли обновится. Это из gcc6, а появление gcc6 в p8 сломает сборку многих пакетов. Так что нужен dotnet, который собран gcc5. Он там не в исходниках ? Может пересобрать можно ?

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 233
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #6 : 20.03.2017 20:14:14 »
В p8 вроде как достаточно свежее  mono4 - вполне достаточно для большинства задач.

Оффлайн Zermond

  • Давно тут
  • **
  • Сообщений: 25
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #7 : 21.03.2017 12:31:23 »
В p8 вроде как достаточно свежее  mono4 - вполне достаточно для большинства задач.
Только что опытным путем выяснили, что в p8 либа не достаточно свежая для неткора. Если код будет писаться под .net Core, то и запускать его нужно не на mono, а в дотнетовской среде, или я не прав?

Это из gcc6, а появление gcc6 в p8 сломает сборку многих пакетов.
В стабильной ветке дебиана, насколько я осведомлен, уже gcc6, а дебиан отличается возрастом своих пакетов (это не призыв к холивару и не вброс, чтобы пофлеймить на тему, какой дистриб лучше, просто реалии таковы, что будет использоваться связка AltLinux + netcore, поэтому хотелось бы получить возможность работать из коробки, точно так же, как и в дебиане, к примеру). По поводу пересборки, вроде бы есть сорсы, но предпочту оставить это на самый последний план, потому что с выходном новых версий неткора, как мне кажется, придется танцевать с бубном. Кстати, может быть на вики добавить информацию о том, что нужно обновить пакет из сизифа?

/upd
Хотя, наверное не стоит рекомендовать устанавливать из сизифа, это же разные ветки. Например, gcc5 не хочет устанавливаться - ругается на зависимости, которые я получил используя стороннюю ветку.
« Последнее редактирование: 21.03.2017 12:37:37 от Zermond »

Онлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #8 : 21.03.2017 13:44:48 »
Это из gcc6, а появление gcc6 в p8 сломает сборку многих пакетов.
В стабильной ветке дебиана, насколько я осведомлен, уже gcc6,
Заначит, там стабилизация произошла позже появления gcc6 в репозитории. В Сизифе пришлось много чего исправлять. Чтобы поместить в p8 gcc6, надо тащить и всё то, что исправляли.
« Последнее редактирование: 21.03.2017 13:47:12 от asy »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 251
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #9 : 21.03.2017 13:58:30 »
Если вы не используете как продакшен, то вполне можно поставить последнюю регулярку   и с ней работать.
Или самому поддерживать работоспособность в рамках Сизифа (предварительное тестирование перед обновлением и т.п.)

Оффлайн ASte

  • Мастер
  • ***
  • Сообщений: 1 549
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #10 : 21.03.2017 14:19:30 »
Сизиф не так уж часто серьезно ломается. Если что-то ломается - то обычно чинится быстрее стабильной ветки. Долгое время сидел на сизифе, до выхода p8 из за отсутствия в p7 нужных версий ПО. Правда на десктопе.
Для production - нужно в этом случае иметь "горячий" резерв, чтобы было на что оперативно переключиться при неудачном обновлении.


Оффлайн Zermond

  • Давно тут
  • **
  • Сообщений: 25
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #11 : 21.03.2017 14:47:16 »
Спасибо за комментарии. Дело в том, что сервер будет продакшн - это точно. Я выступаю не в роли администратора, но в роли разработчика, который предоставляет свой продукт, написанный на коре, клиентам, поэтому администрировать боевые сервера буду точно не я. Сейчас я использую AltLinux, как тестовую площадку для будущих решений, и, конечно, желательно, чтобы эти решения работали из коробки, а не на костылях.

Чтобы поместить в p8 gcc6, надо тащить и всё то, что исправляли.
Так если есть уже исправленные и стабильные версии пакетов, то почему бы их не перетащить в ветку p8? Я понимаю, что это дополнительные человеко-часы, но ведь нужно идти в ногу со временем?

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 233
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #12 : 21.03.2017 15:10:54 »
Чтобы поместить в p8 gcc6, надо тащить и всё то, что исправляли.
Так если есть уже исправленные и стабильные версии пакетов, то почему бы их не перетащить в ветку p8? Я понимаю, что это дополнительные человеко-часы, но ведь нужно идти в ногу со временем?
там ABI другой, как вариант можно попробовать сделать окружение для core с либами glibc из сизифа...

Оффлайн ASte

  • Мастер
  • ***
  • Сообщений: 1 549
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #13 : 21.03.2017 15:28:45 »
Можно еще посмотреть в сторону контейнеров lxc/docker.

Онлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: dotnet GLIBCXX_3.4.22 not found
« Ответ #14 : 21.03.2017 15:47:27 »
Чтобы поместить в p8 gcc6, надо тащить и всё то, что исправляли.
Так если есть уже исправленные и стабильные версии пакетов, то почему бы их не перетащить в ветку p8? Я понимаю, что это дополнительные человеко-часы, но ведь нужно идти в ногу со временем?
Стабильные бранчи в ALT rolling чем-то  напоминают, но не до такой степени. Так что это до p9 вероятнее всего.