Чересчур большие размеры dll стандартных плагинов

Хотите говорить о Far и не знаете, куда обратиться?
lost
Posts: 149
Joined: Mon 31 Oct, 2005 09:42
Has thanked: 12 times
Been thanked: 6 times

Чересчур большие размеры dll стандартных плагинов

Post by lost »

Недавно заметил, что размеры dll стандартных плагинов в архиве стабильной/ночной сборки не такие маленькие, какими они были лет 10 назад. Например, DrawLine.dll из 3.0.5511 x64 размер 94kB (80kB в версии x86). Насколько я помню, раньше вот эти самые-самые старинные плагины типа Align, AutoWrap, Brackets, DrawLine были весом кила по 4-5, потому что не аттачили всякие стандартные монструозные MSVS библиотеки. А сейчас, каждая из них содержит вот такой
Зачем DrawLine-у дни недели и месяцы во всех вариациях? По коду тоже не видно необходимости в этом библиотечном барахле.
Если уже раньше обсуждалось - киньте ссылку. Сам найти не смог.
Last edited by HaRT on Tue 26 Nov, 2019 13:30, edited 1 time in total.
Reason: Убрано спец. оформление Темы (Значок); спрятана картинка.
lost
Posts: 149
Joined: Mon 31 Oct, 2005 09:42
Has thanked: 12 times
Been thanked: 6 times

Чересчур большие размеры dll стандартных плагинов

Post by lost »

Предлагаешь влиться в стройные ряды разработчиков? Ну, я попробую...
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Чересчур большие размеры dll стандартных плагинов

Post by DrKnS »

На определенном этапе бороться с компилятором надоедает и приходит осознание того, что фигурное расставление костылей ради экономии нескольких десятков килобайт в мире, где терабайт стоит копейки - идиотизм.
lost
Posts: 149
Joined: Mon 31 Oct, 2005 09:42
Has thanked: 12 times
Been thanked: 6 times

Чересчур большие размеры dll стандартных плагинов

Post by lost »

Значит, сдались перед корпорациями?
Кому-то копейки, кому-то нет. А люди в соседней теме жалуются на медленный старт FAR-а... Скорость часто следствие размера.
FAR-овский crt.hpp в своё время меня очень воодушевил. И проекты 10-15 летней давности (VS2005/8) без изменений компилятся такими же тощими и теперь (VS2019).
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Чересчур большие размеры dll стандартных плагинов

Post by DrKnS »

lost wrote: Tue 26 Nov, 2019 14:53Скорость часто следствие размера
Размер dll влияет на время запуска примерно так же, как курс доллара или численность пингвинов.
User avatar
zg
zero-gravity
Posts: 6015
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Чересчур большие размеры dll стандартных плагинов

Post by zg »

собирайте gcc 31.07.2019 12:18 19 968 DrawLine.dll.
lost wrote: Tue 26 Nov, 2019 14:53А люди в соседней теме жалуются на медленный старт FAR-а...
хотелось бы фактов. потому как у тех, у кого тормозит в 146% случаев стоит 100500 скриптов и 100500 плагинов требующих дотнет.
lost
Posts: 149
Joined: Mon 31 Oct, 2005 09:42
Has thanked: 12 times
Been thanked: 6 times

Чересчур большие размеры dll стандартных плагинов

Post by lost »

Хочу завершить дискуссию. Пишу просто для истории.
zg wrote: Tue 26 Nov, 2019 17:44 собирайте gcc 31.07.2019 12:18 19 968 DrawLine.dll
VS2019. Исходник не менял. Только свойства проекта.

Code: Select all

║drawline.dll                6 656 27.11.19 10:43║
zg wrote: Tue 26 Nov, 2019 17:44 хотелось бы фактов. потому как у тех, у кого тормозит в 146% случаев стоит 100500 скриптов и 100500 плагинов требующих дотнет.
Согласен. Они пусть сами разбираются. У меня FAR стартует за доли секунды.
Last edited by lost on Wed 27 Nov, 2019 08:53, edited 1 time in total.
User avatar
John Doe
Бюрократ
Posts: 13801
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 425 times
Contact:

Чересчур большие размеры dll стандартных плагинов

Post by John Doe »

Зачем же завершать.
Лучше предложить PR.

Или настроить собственные билды, и поделиться с нами.
lost
Posts: 149
Joined: Mon 31 Oct, 2005 09:42
Has thanked: 12 times
Been thanked: 6 times

Чересчур большие размеры dll стандартных плагинов

Post by lost »

John Doe wrote: Wed 27 Nov, 2019 08:55 Зачем же завершать.
Лучше предложить PR.
Это да. Я попробую, когда соображу, как элегентнее отредактировать *.vcxproj для всех:

Code: Select all

  <ImportGroup Label="PropertySheets">
    <Import Project="$(ProjectDir)..\..\_build\vc\config\common.props" />
  </ImportGroup>
Pasha_ZZZ
Posts: 425
Joined: Mon 12 Jun, 2006 14:58
Has thanked: 1 time
Been thanked: 27 times
Contact:

Чересчур большие размеры dll стандартных плагинов

Post by Pasha_ZZZ »

lost wrote: Wed 27 Nov, 2019 08:52У меня FAR стартует за доли секунды.
У меня Фар всегда запущен, так что не особо важно, сколько он стартует...
2useven10
Posts: 5192
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 309 times

Чересчур большие размеры dll стандартных плагинов

Post by 2useven10 »

lost wrote: Wed 27 Nov, 2019 08:52VS2019. Исходник не менял. Только свойства проекта.
lost wrote: Wed 27 Nov, 2019 08:52drawline.dll 6 656
какие длл нужны для его работы?
lost
Posts: 149
Joined: Mon 31 Oct, 2005 09:42
Has thanked: 12 times
Been thanked: 6 times

Чересчур большие размеры dll стандартных плагинов

Post by lost »

2useven10 wrote: Wed 27 Nov, 2019 11:22 какие длл нужны для его работы?
drawline.dll.7z
(3.08 KiB) Downloaded 88 times
Last edited by lost on Wed 27 Nov, 2019 12:56, edited 1 time in total.
lost
Posts: 149
Joined: Mon 31 Oct, 2005 09:42
Has thanked: 12 times
Been thanked: 6 times

Чересчур большие размеры dll стандартных плагинов

Post by lost »

Промежуточный результат для истории.
Единый common.props для всех из all.sln. Кстати, может, я чего не понимаю в проектах VS, но, кажется, некоторые настройки были прописаны в неправильных секциях. Я перенёс, чтоб было по логике.

Убрал define _CRT_STDIO_LEGACY_WIDE_SPECIFIERS - с ним вообще ни в какую не компилится. Ещё поразбираюсь. Но, насколько я понял, M$ его ввели в 2015, а потом опомнились и вернули как было в 2017.

Ещё в tmppanel перенёс кусок кода про KeyLabels из TmpPanel::GetOpenPanelInfo() в конструктор и сделал им динамическое выделение памяти, а то ради 1 структуры в dll фигачилась целая секция.
Если исключить из этих плагинов VERSION_INFO, то будет ещё минус 1Kb.
Правда, не удалось с наскока скомпилить emenu, network, proclist. Проекты, по сравнению с остальными, крупнее, придётся ковыряться или задать собственные настройки.
Компилить x86 пока не пробовал.
Пока так.
common.props.txt
(8.87 KiB) Downloaded 92 times
Last edited by lost on Mon 16 Dec, 2019 15:06, edited 1 time in total.
User avatar
HaRT
Moderator
Posts: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 times

Чересчур большие размеры dll стандартных плагинов

Post by HaRT »

lost wrote: Mon 16 Dec, 2019 15:05 сли исключить из этих плагинов VERSION_INFO, то будет ещё минус 1Kb.
Прошу на VERSIONINFO не замахиваться — это хороший инструмент для быстрого отсечения целого класса проблем, если разбираться на чужой машине.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Post Reply

Return to “Обсуждение Far Manager”