Лекс Айрин писал(а):...возможно речь об оптимизаторе, а не о линкере. Линкер это программа made
а не "ld"-ли линкер? make лишь запускает его.
Модератор: Модераторы
Лекс Айрин писал(а):...возможно речь об оптимизаторе, а не о линкере. Линкер это программа made

 Но я не умею, в FPC запускать, отдельно этапы 1-2 и => потом: 3) компилятор и 4) линковщик от других IDE
  Но я не умею, в FPC запускать, отдельно этапы 1-2 и => потом: 3) компилятор и 4) линковщик от других IDE   
   
  
vitaly_l писал(а):2) Удаление названий из исполняемого файла (оставить только адреса после линковки).
vitaly_l писал(а):1) Умная обфускация
vitaly_l писал(а):И всего-то нужно надстройку и линковщик написать / оптимизировать.
vitaly_l писал(а):Порядок "компиляции" такой:
1) препроцессинг,
2) ассемблирование,
3) компилирование,
4) линкер.

Лекс Айрин писал(а):Лексический анализ,
препроцессинг,
Синтактический анализ,
оптимизация,
компиляция модулей,
оптимизация2 (не всегда),
сборка (линковка)
Лекс Айрин писал(а):обфускация это сокрытие кода

vitaly_l писал(а):А где ассемблирование?
vitaly_l писал(а):Я всегда говорю про "умную обфускацию", например как в JS/

Лекс Айрин писал(а):параллельно иногда можно создать asm-листинг


Sergei I. Gorelkinугу... что же тогда проги такие тяжелые?
pupsik писал(а):возможность "импорта" в лин.
pupsik писал(а):обфускация: https://ru.wikipedia.org/wiki/%D0%9E%D0 ... 0%B8%D1%8F
При чем тут размеры и жабка?
pupsik писал(а):2. Уж дочитайте книжку. А не вскользь просмотрел быстренько.
pupsik писал(а):Присоединяюсь к Лексу:
Sergei I. Gorelkinугу... что же тогда проги такие тяжелые?
Уж очень интересно почитать..

и..и. Это слова разраба, я их озвучил. Вы думаете мне что то помешает, при необходимости, сделать и для лина?только для винды, кто-то выше писал
Мдя..я. Как это касается размера бинарника? Конечно: 5 строк и 10000 повлияют на размер (байт туда, байт сюдаОптимизация программы с целью уменьшения размера работающего кода
 ). Но..о в итоге: а воз и ныне там. Да же больше может стать.
). Но..о в итоге: а воз и ныне там. Да же больше может стать.
pupsik писал(а):Кол в свн - вчера обновилось
pupsik писал(а):LLCL - не давно выложен. Если не ошибаюсь. И это клон. Уже 6-ой день не обновлялось
pupsik писал(а):Зачем "скрываться" в художниках?
pupsik писал(а):Вы думаете мне что то помешает, при необходимости, сделать и для лина?

Вам возможно это и легко
 я не писал легко или нет. Я писал: при необходимости. Это малость иное "направление"...
  я не писал легко или нет. Я писал: при необходимости. Это малость иное "направление"... 
vitaly_l писал(а):А например LLCL, уменьшает тем что, подключает вместо них системные от винды
vitaly_l писал(а):4) линковщик от "турбо паскаля 7" и всё получится. А "турбо паскаль 7" умеет удалять имена, как говорили выше.
 - модель и формат объектного файла на них вообще не рассчитанаы, и каждый класс рассыпается на набор функций и полей, закодированных чуднЫм образом), а таблиц взаимозависимостей - уже нет. И последняя стадия сборки каждый объектный файл в готовый проект вставляет только целиком и никак иначе. Так что по сути дело не в сборщике, а в той стадии, которая выбирает функции и классы из библиотек языка внутреннего формата (aka .TPU, .FPU и прочих подобных; в Visual C++ для этого делается грандиозный файл кросс-линков, который в несколько раз больше самого проекта и по которому именно делается оптимизация, фоновая перекомпиляция и прочее). И только тут возможно выбросить лишний код. Кстати, именно по озвученной причине в Си принято аж с самого рождения языка исходник каждой функции записывать в отдельный файл. Иначе, получается ситуация, когда в файле например 100 независимых функций, из них используется только одна, а поскольку правило: исходный файл -> объектный файл - к финальному проекту, использующему эту одну функцию, будет прилинкован весь мертвый код остальных 99-ти.
 - модель и формат объектного файла на них вообще не рассчитанаы, и каждый класс рассыпается на набор функций и полей, закодированных чуднЫм образом), а таблиц взаимозависимостей - уже нет. И последняя стадия сборки каждый объектный файл в готовый проект вставляет только целиком и никак иначе. Так что по сути дело не в сборщике, а в той стадии, которая выбирает функции и классы из библиотек языка внутреннего формата (aka .TPU, .FPU и прочих подобных; в Visual C++ для этого делается грандиозный файл кросс-линков, который в несколько раз больше самого проекта и по которому именно делается оптимизация, фоновая перекомпиляция и прочее). И только тут возможно выбросить лишний код. Кстати, именно по озвученной причине в Си принято аж с самого рождения языка исходник каждой функции записывать в отдельный файл. Иначе, получается ситуация, когда в файле например 100 независимых функций, из них используется только одна, а поскольку правило: исходный файл -> объектный файл - к финальному проекту, использующему эту одну функцию, будет прилинкован весь мертвый код остальных 99-ти.Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1