Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Урезанная сборка OS2 для использования в конечных продуктах #1467

Open
Bayselonarrend opened this issue Oct 28, 2024 · 5 comments

Comments

@Bayselonarrend
Copy link

Описание задачи

Если есть простой способ это сделать, то добавить вариант сборки OneScript 2.0 с исключением различных дев dll по типу дебаггера, диагностик и пр. Это было бы удобно для включения независимых сборок OS в состав пакетов и установщиков конечных продуктов, для которых 90 мб это ту мач

Опишите решение
Создавать zip/deb/rpm OneScript-а с уменьшенным набором dll и весом, файлы которого можно было бы положить рядом с библиотекой уже в своем zip/deb/rpm и получить полноценный варез

Дополнительная информация
Если бы еще можно было по коду скрипта определять набор используемых dll - вообще было бы супер)

@EvilBeaver
Copy link
Owner

Есть нугет-пакеты с отдельно дебаггером, отдельно стандартной библиотекой и т.п. Не очень понял цель - что нужно получить? Малый дистрибутив это FDD-вариант, около 10 Мб

@Bayselonarrend
Copy link
Author

Bayselonarrend commented Oct 29, 2024

Не очень понял цель - что нужно получить?

Малый (скорее меньший, чем обычный) дистрибутив, но не FDD)

@Bayselonarrend
Copy link
Author

Условно, у меня есть, например, deb пакет, который при распаковке кладет следующее:

  1. /usr/share/{имя приложения}/bin - тут лежит oscript
  2. /usr/share/{имя приложения}/lib - тут лежат нужные .os
  3. /usr/bin/{имя приложения} - тут просто .sh, который запускает oscriptом из п.1 .os из п.2

Но oscript из п1, если класть его какой он сейчас, очень большой. В rc-4 он как бы еще 70 мб - 30 в пакете, но rc-5 уже под сотку. Я из него конечно ASP вырезал и стало меньше) Но просто стало интересно, есть ли возможность вырезать из него что-нибудь такое, что используется только при разработке, но не нужно если подразумевается только запуск

@EvilBeaver
Copy link
Owner

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

Такой эксперимент не проводился. Технически, можно удалить любые dll, которые не используются в рантайме, а только упомянуты в зависимостях, т.к. загрузка dll выполняется при первой попытке JIT-компиляции метода из библиотеки

@Bayselonarrend
Copy link
Author

Bayselonarrend commented Oct 31, 2024

Технически, можно удалить любые dll, которые не используются в рантайме, а только упомянуты в зависимостях

А где можно посмотреть какие есть какие?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants