![]() |
Модераторы: LSD Страницы: (7) Все « Первая ... 2 3 [4] 5 6 ... Последняя »
( Перейти к первому непрочитанному сообщению ) |
![]() ![]() ![]() |
|
||
|
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 2 Всего: 162 |
Alexeis, ты не прав менеджеры пакетов во многих дистрибутивах GNU/Linux умеют такое, что большинству других ОС и не снилось.
Нужно только время, чтобы понять эту красоту. Dll hell'a нет by design. Нужно только абстрагироваться от сугубо виндового подхода. P.S. Зачем ты покормил тролля :( P.P.S. Голосовал, естественно, за "никогда". Не будет и не нужно. P.P.P.S. Ребят, как вы умудряетесь делать такое на стабильных ветках дистрибутивов... Почему я сижу на сугубо разработческой/экспериментальной версии дистрибутива, которая обновляется практически каждый день и у меня что-то валится ну хорошо если раз в месяц, а аптаймы (ноутбук) поболее некоторых серверов... P.P.P.P.S. WinSXS - тот ещё костыль. Не ожидал, что его рекламировать будут... Да, господа виндовые разработчики, расскажите-ка мне, как я могу определить, совместимы ли бинарно две Dll'ки. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 1 Всего: 329 |
работать надо милейший, работать, а не сидеть ![]() Добавлено через 28 секунд это не так просто ![]() Добавлено через 2 минуты и 37 секунд
бинарно? думаю никак но всё же: 1. Есть утилиты, которые показывают список экспортируемых функций библиотеки 2. Есть понятие версии: версия, билд и т.д. 3. Можно спросить у самого разработчика. 4. Может ещё что есть... Добавлено через 3 минуты и 7 секунд JackYF, кстати, что такое бинарная совместимость? |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 2 Всего: 162 |
Я провожу за компьютером большую часть своего активного времени, так что... ![]() Application Binary Interface, ABI. Так вот, а в мире Unix-like есть понятие SONAME. Этот уникальный (в пределах библиотеки) идентификатор обязан сменяться каждый раз, когда меняется ABI библиотеки. Собственно, /thread ![]() Это сообщение отредактировал(а) JackYF - 2.3.2009, 22:42 |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 1 Всего: 329 |
не спорю, это была шутка, я попытался разрядить обстановку, так что... ![]() Добавлено @ 23:00 наверное я не дорос до твоего уровня, т.к. первый раз об этом слышу ![]() Добавлено через 2 минуты и 15 секунд фиг знает, может в винде и нет такого понятия, т.к. оно там и не нужно ![]() Это сообщение отредактировал(а) Akella - 2.3.2009, 23:01 |
|||
|
||||
smartov |
|
|||
![]() свой собственный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4225 Регистрация: 2.2.2006 Где: NJ Репутация: 10 Всего: 259 |
JackYF, в ващем тоне я чувствую язвительность
![]() Добавлено через 1 минуту и 3 секунды Вообще не понимаю откуда вопрос. У двух подходов к библиотекам - виндового и линухового - есть как достоинства так и недостатки. Нельзя отдать преимущество ни одному. |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 4 Всего: 154 |
||||
|
||||
smartov |
|
|||
![]() свой собственный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4225 Регистрация: 2.2.2006 Где: NJ Репутация: 10 Всего: 259 |
Lazin, черт, когда ты успел
![]() ![]() |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 4 Всего: 154 |
не все добавляют version info, к тому-же при загрузке DLL проверяется только совместимость на уровне импортируемых функций, и все ![]() правда .NET сборки такого недостатка лишены, да и COM компоненты то-же ![]() |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 1 Всего: 329 |
Lazin, девушка на твоей аватарке очень похожа на мою сестру
![]() |
|||
|
||||
smartov |
|
|||
![]() свой собственный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4225 Регистрация: 2.2.2006 Где: NJ Репутация: 10 Всего: 259 |
||||
|
||||
nerezus |
|
||||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 13 Всего: 43 |
На дебиане пару раз и 1 раз на убунту. Ситуация была в том, что зависимости у нескольких пакетов попарно противоречили друг другу.
Я от пользователя несколько раз ломал без прав суперюзера. =) Но это было не в последние 2 года, сейчас качественнее стало все гораздо ) Но от простого апдейта система может сломаться(точнее менеджер пакетов, ситуация выше) |
||||
|
|||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 2 Всего: 162 |
/me смотрит на название раздела и хмыкает ![]() А, хорошо. А оно отображает бинарную совместимость? Версии библиотек и SONAME - разные, хотя и не ортогональные понятия. /me снова посмотрел на название раздела ![]()
Видишь ли, в чём затык... не знаю точно, как в убунте, а в Debian stable и testing пакеты не могут иметь противоречащих зависимостей by design. Они туда просто не попадут. Если речь идёт о сторонних пакетах - это уже не проблема дистрибутива. |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 4 Всего: 154 |
а что будет, если допустим у нас есть приложение А, оно использует библиотеку - Lib.
В библиотеке есть только одна ф-я - Foo. Теперь мы хотим установить библиотеку Б, которая зависит от более новой версии Lib. В этой новой версии, ф-я Foo работает так-же как и раньше, но добавилась ф-я Bar. В общем, приложение А, может работать как со старой, так и с новой версией Lib, а приложение Б, только с новой. Но если мы установим новую версию Lib, у нее будет другой soname, и приложение А работать не будет, хотя на самом деле оно может использовать новую библиотеку. Как менеджеры пакетов это разруливают? |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 14 Всего: 459 |
Задача ОС не только в том что запускать на ней свой софт или софт из репозитория. Софт пишут разные люди, используя разные версии пакетов. Пользователь программы не должен заниматься решением вопросов совместимости пакетов (кроме обновления). -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 13 Всего: 43 |
Это в убунту было. Взял пакет из debian(там был в нестабильных пакет с нужной версией), но осадок остался нехороший. |
|||
|
||||
![]() ![]() ![]() |
Правила ведения Религиозных войн | |
|
1. Уважайте собеседника 2. Собеседник != враг 3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez" С уважением, Smartov. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Религиозные войны | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |