Совместимость бинарника со всеми Linux

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

Re: Совместимость бинарника со всеми Linux

Сообщение скалогрыз » 30.09.2023 22:14:39

Паскаль не может использовать на "сборку из исходников".

"сборка из исходников" опирается на хедеры, которые поставляются самой системой. А паскаль не использует си-шные хедеры.
А линкусойды не пишут на паскале, и хедеры для паскаля не предоставляют. (можно прикрутить какой-нить h2pas для этих целей, но шанс, что хедеры не сконвертируются правильно - большой)

В идеале, что паскаль может делать, это не опираться на линковку с libc (и вроде бы он не опирается для линуксов, а только на мак-е)
Ну и делать динамическую загрузку всего внешего. (что ни как не добавляет скорости к запуску)
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Совместимость бинарника со всеми Linux

Сообщение Seenkao » 30.09.2023 22:34:52

скалогрыз писал(а):шанс, что хедеры не сконвертируются правильно - большой

Шанс, что хедеры не сконвертируются, почти 100%-й. Я ещё не видел ни одной библиотеки, где h2pas без сторонней помощи сам смог справится.
Seenkao
энтузиаст
 
Сообщения: 502
Зарегистрирован: 01.04.2020 03:37:12

Re: Совместимость бинарника со всеми Linux

Сообщение WAYFARER » 01.10.2023 15:31:14

скалогрыз писал(а):В идеале, что паскаль может делать, это не опираться на линковку с libc (и вроде бы он не опирается для линуксов, а только на мак-е)

И в Linux все так же...
Аватара пользователя
WAYFARER
энтузиаст
 
Сообщения: 520
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Re: Совместимость бинарника со всеми Linux

Сообщение RRYTY » 02.10.2023 07:45:57

скалогрыз писал(а):Паскаль не может использовать на "сборку из исходников".


%-) Занавес.
RRYTY
постоялец
 
Сообщения: 187
Зарегистрирован: 25.12.2021 10:00:32

Re: Совместимость бинарника со всеми Linux

Сообщение haword » 02.10.2023 09:08:44

завалить линукс делов на пару минут. в virtualbox увеличиваешь размер диска, запускаешь линукс и получаешь кернел паник. пока initramfs не пересобирешь загрузившись с iso попрыгав с бубном не запустится. чуть не так задал разрешение экрана все, иксы упали, прыгай с бубном восстанавливай. и самое веселое - чуть что установи новые либы и через какое то время сам линукс занимает уже более 30 гигов на диске и никакие чистки не помогают уменьшить размер.
haword
постоялец
 
Сообщения: 301
Зарегистрирован: 02.03.2006 11:34:40

Re: Совместимость бинарника со всеми Linux

Сообщение stikriz11 » 02.10.2023 10:47:27

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


После этих строк можно психиатру ставить диагноз. Я заканчиваю сраться, всем спасибо. Собственно нормальный разговор опять перешел в какие-то рекламные лозунги и зарисовки креативные про то как хорошо в Linux. А хотелось бы конструктива как не наступить на грабли. Такое ощущение, что линуксоидам платят за рекламу. А может, долгое общение с черным экраном консоли... Ладно.
stikriz11
постоялец
 
Сообщения: 114
Зарегистрирован: 04.09.2023 15:54:19

Re: Совместимость бинарника со всеми Linux

Сообщение Снег Север » 03.10.2023 09:06:04

Не хочу влазить в линуксопроблемы, но замечу, что авторы тифона успешно реализовали сборку своего иде и библиотек скриптами почти на любых платформах, которые совместимы по ядру с их разработкой. А для старых ядер есть предыдущие сборки.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2997
Зарегистрирован: 27.11.2007 16:14:47

Re: Совместимость бинарника со всеми Linux

Сообщение Alexander » 01.11.2023 18:11:05

Звучит как теория заговора)

Соглашение использовать расширение .ko было принято только для того что бы избежать путаницы с обычными объектными файлами.
Модули ядра, в отличии от обычных объектников содержат дополнительные данные необходимые для загрузки модулей.
А с нарушителями GPL борются более классическим образом - в судах


Так и делают. Но когда нарушений становится слишком много юридический метод дополняют техническим. Юристы просто не успевают выиграть столько дел. В новой версии ядра эта техническая защита была удвоена:

https://foss-ru.livejournal.com/326306.html
Аватара пользователя
Alexander
энтузиаст
 
Сообщения: 703
Зарегистрирован: 18.12.2005 19:10:00
Откуда: оттуда

Re: Совместимость бинарника со всеми Linux

Сообщение SSerge » 01.11.2023 20:33:17

Снег Север писал(а):авторы тифона успешно реализовали сборку своего иде

не забывайте, что они весь тайфун из исходников собирают на целевой машине, а из исходных бинарников у них там только коллекция компиляторов, которую они, упрощая, просто копируют из архива для каждой "совместимой" системы.
SSerge
энтузиаст
 
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Re: Совместимость бинарника со всеми Linux

Сообщение Kopa » 20.11.2023 23:06:46

Добавлю и свои "пять копеек" в топик.
С какого то времени стал использовать Linux и свой выбор сделал в пользу PuppyLinux
Сейчас в основном загружаю PuppyLinux 32 (версии Xenial) через Grub4Dos в формате LiveCD с внешнего USB SSD не устанавливая на диск.

Какой то софт беру уже в бинарниках (как к примеру FireFox119, Palemoon 35.0.1, Wine 8.20), а какой то сам собираю из интереса с помощью штатного DevX какой то Puppy. Если нужна 64-ёх битная Puppy или какая то отдельная сборка Puppy, то в выборе через меню Grub4Dos запускаю и её.
Минимально используемая Puppy для сборки у меня Tahr (базис Ubuntu 14.04)

В Хеnial заменил GlibC на версию 2.33, чтобы была возможность запуска бинарников от Slackware 15.0 и других Linux где критична версия используемой GlibC (и попробовал собрать Glibc 2.33 из исходников с Mesa и OrgX и добавить к Puppy и в целом это удалось)

К примеру и собирал DoubleCommander под Puppy или тот же Wine (версии 8.6), SimulIDE, Seamonkey 2.15, Opera 12.15, GCC 13 ....

В той же сборке Puppy (Focal32+Debian) запускается и портабельный Far2L (32) как и он же если запускать именно 32-бит программы
под Puppy64 (начиная от от версии Focal64)

Репы в Прoграммном менеджере подтягиваются из тех репозиториев на базе какой Linux собрана конкретная Puppy (бывают и смешанные сборки)

Пробовал и кросс компилить какой то Linux софт под Windows c разным успехом.

В целом не вижу особых нерешаемых проблемм с запуском бинарников под Linux если добавить недостающие библиотеки им. :)
К, примеру, для сборки штатных примеров от Mesa добавил к Puppy Glew и Gles и почти "все" собранные примеры запустились
(какой то пример с использованием KMS выдал Segmentation Fault),

Добавлено спустя 38 минут 30 секунд:
WAYFARER писал(а):[. Полчаса я потратил на установку и настройку инструментов разработки (несколько версий php,Xdebug, apache, mysql, postgresql, NetBeans, git, fpc и Lazarus),

А, пакет XamPP для разработки не был опыт использования с PHP?
Сейчас, вроде, для PHP популярность для использования набирает Laravel
Kopa
новенький
 
Сообщения: 41
Зарегистрирован: 29.10.2020 12:24:36

Re: Совместимость бинарника со всеми Linux

Сообщение WAYFARER » 21.11.2023 09:48:38

Kopa писал(а):А, пакет XamPP для разработки не был опыт использования с PHP?

Есть множество нюансов, которые не позволят его использовать в моем случае.
Да и разработки платформозависимые. В Windows некоторая часть кода работать не будет.

Kopa писал(а):Сейчас, вроде, для PHP популярность для использования набирает Laravel

Laravel уже больше 10 лет лидирует по популярности. Но у нас как то исторически сложилось, что основным является yii2, хотя laravel используем тоже.


Kopa писал(а):В целом не вижу особых нерешаемых проблем с запуском бинарников под Linux если добавить недостающие библиотеки им.

Проблем вроде бы и нету, но в то же время у кого то они есть)).
Начать можно с glibc. В новых версиях поддерживается обратная совместимость со старыми, но в обратную сторону это не работает. С графическими приложениями тоже есть проблемы.
Получается, что бы добиться совместимости нужно заворачивать приложение вместе со всеми зависимостями в изолированный контейнер, но и это не гарантирует работу во всех дистрибутивах, да и работать будет не всегда корректно.
На мой взгляд самый разумный подход это делать сборки для нескольких популярных дистрибутивов, учитывая их особенности.

PS. Я уже выше писал, но все напишу еще раз для тех кто хочет "как в Windows". У MS это одна линейка операционных систем. Это все Windows.
Вы как разработчики поддерживаете разные версии ОДНОЙ ОС.

В нашем же случае это десятки РАЗНЫХ систем использующих ядро Linux и очень друг от друга отличающихся.
Мы, например, просто поддерживаем несколько дистрибутивов, которые используем и сами и наши клиенты, а с выходами новых версий мы обновляем и наше ПО.
Таким образом в поддерживаемых системах софт гарантированно запускается и работает хорошо.
Если мы когда то решим начать продавать наше ПО, то поступать будем точно так же, просто расширим поддержку дистрибутивов.

Если кто то хочет собрать один раз и больше ничего не делать, но что бы запускалось и работало везде, то нет, халявы не получится, придется потрудиться))))

Добавлено спустя 45 минут 2 секунды:
SSerge писал(а):не забывайте, что они весь тайфун из исходников собирают на целевой машине, а из исходных бинарников у них там только коллекция компиляторов, которую они, упрощая, просто копируют из архива для каждой "совместимой" системы.


У CT очень обширный список поддерживаемых систем. Это конкретные версии дистрибутивов. Для каждой поддерживаемой системы CT подтягивает все необходимые зависимости из репозитория конкретного дистрибутива. Так что собирается и запускается он исключительно только в системах, которые CT поддерживает, а в других нет)).
Аватара пользователя
WAYFARER
энтузиаст
 
Сообщения: 520
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Re: Совместимость бинарника со всеми Linux

Сообщение stikriz11 » 21.11.2023 10:46:53

Дело не в том, что хочется халявы, а в том, что на эту проблему пора обратить внимание. Не наше. Пора обратить внимание разработчиков осей. И ввести какой-то стандарт, что ли. И выполнять неприлежное правило разработки интерфейсов - если хочется изменить вызов, не делай это в новой версии, а делай новый интерфейс или новый вызов. Старый вызов оставь в покое.
Вместо этого со всех сторон бахвальство, что нет проблем, мы справляемся, у нас все хорошо, что я делаю не так. Ну, и не обращают внимание, раз все хорошо. Со стороны видится какой-то дурдом. У разработчиков дистрибутивов нет обратной связи с пользователями. Если кто-то поднимает проблему, то толпой набегают какие-то идиоты, и всячески унижают пользователя, вместо того, чтобы подсказать или хотя бы зафиксировать.
Столкнулся с интересным отношением Астры к пользователям. Хотя, не знаю, официально обратится не удалось, но вроде это был представитель Астры. Типа, мы не будем решать эту проблему, потому что Вы не оплатили поддержку. Я бесплатно им протестировал, нашел баг, и вместо благодарности вот такое. Мне показалось это странным.
Ребята, борьба с Билли, чтобы винда сдохла в нашей стране окончена. Это вопрос времени. Всем должно быть понятно, что надо с неё сваливать пока не поздно. Для организаций точно. Но, куда? Зоопарк дистрибутивов это не преимущество - это страшный недостаток.
Я бы вообще для госструктур утвердил три, а лучше две штуки дистрибутивов и заставил их унифицировать свои стандарты до бинарной совместимости. И "сторонние" могли бы у них сертифицироваться на предмет совместимости. Тогда мы как разработчики могли бы рекомендовать своим частным пользователям совместимые оси для работы в наших программах.
stikriz11
постоялец
 
Сообщения: 114
Зарегистрирован: 04.09.2023 15:54:19

Re: Совместимость бинарника со всеми Linux

Сообщение Alexander » 21.11.2023 13:37:41

> Зоопарк дистрибутивов это не преимущество - это страшный недостаток.

Для Линукса это большое преимущество, а не недостаток. Дистрибутивы имеют разное назначение и под него сделаны.
Общим является исходный код.

> Я бесплатно им протестировал, нашел баг, и вместо благодарности вот такое.

Этого делать не следовало. "Астра" не находится на стороне пользователя. И улучшать им ничего не нужно.
Это проделки того же "Билли". Прежде чем тестировать нужно получить полный исходный код тестируемого под свободной лицензией. Что сподвигло на тестирование непризнанного дистрибутива ? Какой эффект, какой результат ожидался от этого ? Ну да в нём много ошибок, начиная с него самого, но зачем его тестировать, когда и так понятно ? Как говорится: если его не трогать оно и не воняет. Или:

https://bumbarashka.ru/jokes/t/unitaz писал(а):Унитаз бегает из угла в угол и бормоча орет: — Такой друг... такой друг... ТАКОЙ друг... и так в душу насрать...


> и заставил их унифицировать свои стандарты до бинарной совместимости

Кого заставил ?! Нужно думать прежде чем писать. А заставить нужно открыть исходный код. Чем вся задача и ограничивается. Где код "Астры" ? Не на совместимости ABI нужно настаивать (её сейчас быть не может), а на открытости свободного исходного кода.

> сертифицироваться

Кто кого сертифицирует ?! Есть разработчики свободного софта -- они выдают лицензию на пользование. Или запрет на пользование. И всё. Но не наоборот.

> унифицировать свои стандарты до бинарной совместимости.

Этого делать нельзя по вышеуказанным причинам. Нестабильный ABI сейчас даёт гарантию свободности софта.
Можно ли это изменить и сделать стабильный ABI ? Да. Но до этого нужно законодательно запретить копирастию (раньше это называлось "нетрудовой доход") и ввести наказание за непредоставление полного исходного кода. Тогда это было бы возможно, а пока нет. Раньше этого стабилизировать ABI невозможно.

Прежде чем что-то делать надо понимать к чему это приведёт.

> Мне показалось это странным.

Это не странно. Это обычно. Прежде чем использовать (, тестировать, пропагандировать, развивать, ...) дистрибутив нужно убедиться в том, что его полный исходный код доступен под свободной лицензией. Понимать чем он славен, какова его репутация. И уметь собирать его себе из исходников.

Таким критериям соответствует, например, Дебиан. Его и надо развивать, тестировать, писать багрепорты. Можно хоть готовый взять, хоть из исходников собрать, хоть изменить. И ничего лишнего придумывать вообще не надо.
Если нужен какой-то один дистрибутив, то вот он. Но есть и другие для своих задач. Например для ремонтных целей https://www.system-rescue.org/ или для музыкантов https://andreyex.ru/linux/luchshie-dist ... ya-muzyki/

У Дебиан есть:
1. Конституция Debian: https://www.debian.org/devel/constitution.ru.html
2. Быстрое двоичное распространение с высокоразвытым индустриальным инсталлятором.
3. Полный свободный исходный код программ и все инструменты его создания. Возможность пересобрать дистрибутив из исходников одной командой.
4. Отсутствие привязки к коммерческой фирме: дистрибутив разрабатывается Сообществом. Он никуда не исчезнет и его положительные свойства никогда не изменятся.
5. Всемирное признание и участие.
Аватара пользователя
Alexander
энтузиаст
 
Сообщения: 703
Зарегистрирован: 18.12.2005 19:10:00
Откуда: оттуда

Re: Совместимость бинарника со всеми Linux

Сообщение stikriz11 » 22.11.2023 19:04:06

Дебиан не рекомендована - все, оно не надо мне. Астра рекомендована. И еще. Я не в Вашей шайке. Не надо мне указывать что должно быть, а что нет. Про полный исходный код... Это Вы тоже за то, чтобы нвидиа выдала полный исходный код своих дров, и только тогда можно их в поставку включать? Я таких заскоков не понимаю. Зато видно как обрабатывают мозг новичкам, что они всегда одно и тоже несут, типа, у меня все работает, что я делаю не так))) Меня обучать своим повадкам не надо. На меня это не действует - только деньги.
Про лицензирование и прочее - я писал как бы я поступил, чтобы убрать зоопарк из тех дистрибутивов, которые будут использоваться в гос структурах. Я лично против зоопарка. Не считаю это преимуществом. Я против зоопарка в либах, бинарной не совместимости и изменения интерфейсов в новых версиях. И вообще, я против всякого творожка в головах - я за разумный психически здоровый подход.
stikriz11
постоялец
 
Сообщения: 114
Зарегистрирован: 04.09.2023 15:54:19

Re: Совместимость бинарника со всеми Linux

Сообщение Alexander » 23.11.2023 08:07:13

Никого не волнует за что ты или против чего. Это от тебя не зависит.
Аватара пользователя
Alexander
энтузиаст
 
Сообщения: 703
Зарегистрирован: 18.12.2005 19:10:00
Откуда: оттуда

Пред.След.

Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 40

Рейтинг@Mail.ru