The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск Wine 8.18, opennews (??), 14-Окт-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


90. "Выпуск Wine 8.18"  +/
Сообщение от olelukoie (ok), 14-Окт-23, 20:21 
Вообще-то в последнее время от dlopen() нативных либ они стали отказываться и вместо этого бандлят либы и собирают их в виде PE-dll'ок. Так, например, поступили с libpng и libfreetype. Возможно, что и FluidSynth тоже сюда попал...
Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

92. "Выпуск Wine 8.18"  +/
Сообщение от Аноним (92), 14-Окт-23, 21:07 
Не "возможно", а попал: https://gitlab.winehq.org/wine/wine/-/commit/f768d6b31bebc35...
Ответить | Правка | Наверх | Cообщить модератору

94. "Выпуск Wine 8.18"  +/
Сообщение от olelukoie (ok), 14-Окт-23, 22:02 
Ок, попал так попал.

И я даже догадываюсь, зачем разрабы WINE стали так делать: этот подход избавляет WINE от зависимостей от 32-битных нативных либ, которые иначе потребуются для запуска 32-битного виндового софта. В результате появляется (пока еще не появилась, поскольку не все зависимости переведены на PE-формат) возможность собрать и использовать полноценный двух-архитектурный (32+64 бита) WINE на 64-битной хост-системе без установки 32-битных нативных либ.

Ответить | Правка | Наверх | Cообщить модератору

105. "Выпуск Wine 8.18"  +/
Сообщение от Аноним (105), 15-Окт-23, 02:46 
Ничего не понял. На 64-битной машине по 2 комплекта либ, на 32-битной - по одному. Не вижу проблемы зависеть от 32-битной либы из дистра, если это избавляет от необходимости тащить свою копию этой либы в составе вайна. Либа ведь так или иначе тащится. Но при бандлованнии ещё и память жрёт, дистроспецифичные фиксы не имеет, да и вообще мамонтово говно, ибо пнактика показывает, что на обновление бандлованных либ забивают.
Ответить | Правка | Наверх | Cообщить модератору

119. "Выпуск Wine 8.18"  +/
Сообщение от olelukoie (ok), 15-Окт-23, 17:58 
>Либа ведь так или иначе тащится.

Вот именно от этого и хотят избавиться. Был большой шум, когда разрабы убунты пару-тройку лет назад сказали, что больше не будут собирать 32-битные либы (вместе с 32-битным дистром). WINE оказался единственным значимым проектом, который сподвиг их все-таки обеспечить наличие 32-битных либ в 64-битном дистре. Но только временно, пока WINE не научится работать без них. Вот он и учится. Просто бандлит все свои зависимости и собирает их в PE-dll. Процесс не быстрый, но лет за пять должны управиться :)

Ответить | Правка | Наверх | Cообщить модератору

122. "Выпуск Wine 8.18"  +/
Сообщение от Аноним (60), 15-Окт-23, 20:33 
>Вот именно от этого и хотят избавиться

Это не возможно: если либы нет, то кто вместо неё работу выполнять будет? Другая либа? Ну так поздравляю - от чего ушли - к тому и пришли. Бандлованная либа всё равно есть либа, просто бандлованная. Она всё равно потребляет память. Причём несколько раз - один раз потребляет либа в системе, а другой раз - бандлованная либа. Собрать 2 либы, одну для 32 бит, другую для 64? Ну так и было и есть сейчас. Можно ли обойтись без 32-битных реализаций? Можно - сгенерить 32-битную либу, которая будет переключать проц в 64-битный режим и обратно на каждом вызове API, а дальше пробрасывать в 64-битную либу. В вайне есть реализация этого. Вполне можно сделать дополнительное имя ABI, и иметь 2 венсии каждого пакета с либами, один с пробросом, а другой с реальным 32-битным кодом, для большиинства пакетов такие stubы будут намного легче, чем добавочные 32-битные реализации. И проблема решена без всяких высокопроблемных методов, вроде бандлования.

Бандлование - это то, что несёт в себе проблемы, но оно порождено нижележащими проблемами, которые бандлованием пытаются просто замести под ковёр, сказав "как же меня достало делать мою работу, вот, подавитесь, беру и бандлую, теперь я свободен от пакетного рабства и что хочу со своей копией - то и делаю, никто мне не указ, это наоборот теперь я всем указываю, сколько памяти докупить и какая версия зависимости будет в моей программе", вместо работы с апстримом по внедрению в апстримные версии всех необходимых интерфейсов и обновления своей программы под изменения в апстриме. В основном эти серьёзные проблемы такие:
* разработчик - лентяй и пофигист. Правильное решение - уволить такого работника и нанять нового.
* апстрим - упёртый баран. Правильное решение - создать свой форк, перевести на него сообщество, а баран пусть в свою отставшую никому не нужную версию рогом упирается.

Ответить | Правка | Наверх | Cообщить модератору

131. "Выпуск Wine 8.18"  +/
Сообщение от Аноним (131), 16-Окт-23, 07:12 
> мамонтово говно

И станет в точности как в Винде.

Ответить | Правка | К родителю #105 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру