- отбрасывать неиспользуемый код (константы и т.д.)
Умеет ли компилятор ...
Модератор: Модераторы
- Romtek
- постоялец
- Сообщения: 190
- Зарегистрирован: 22.05.2005 12:29:35
- Откуда: Рамат Ган
- Контактная информация:
Умеет ли компилятор ...
Умеет ли компилятор ...
- Alexander
- энтузиаст
- Сообщения: 888
- Зарегистрирован: 18.12.2005 18:10:00
- Откуда: оттуда
- Контактная информация:
Это smartlink
ключи: -XX -CX
или для юнитов внутри них (то же что и -CX):
{$SMARTLINK ON}
Используемые юниты должны быть скомпилированы с его поддержкой.
Которые скомпилированы без поддержки будут прилинкованы полностью.
Хотя почему это не вделано в сам компилятор (при генерации кода),
а происходит только при сборке...
ключи: -XX -CX
или для юнитов внутри них (то же что и -CX):
{$SMARTLINK ON}
Используемые юниты должны быть скомпилированы с его поддержкой.
Которые скомпилированы без поддержки будут прилинкованы полностью.
Хотя почему это не вделано в сам компилятор (при генерации кода),
а происходит только при сборке...
- Romtek
- постоялец
- Сообщения: 190
- Зарегистрирован: 22.05.2005 12:29:35
- Откуда: Рамат Ган
- Контактная информация:
Занимательно. Если не указывать ключ -Mdelphi, то лишняя информация не включается.
Пробовал на коде
Так что получается, что Лазарусом информация таки включится, т.к. тот по-моему всегда использует ключ -Mdelphi.
Пробовал на коде
Код: Выделить всё
const
some: string = 'some string';
begin
end.Так что получается, что Лазарусом информация таки включится, т.к. тот по-моему всегда использует ключ -Mdelphi.
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
- Alexander
- энтузиаст
- Сообщения: 888
- Зарегистрирован: 18.12.2005 18:10:00
- Откуда: оттуда
- Контактная информация:
Romtek писал(а):Когда компилирую с ключами -XX -CX -Mdelphi , таки лишняя информация подключается.
То есть и с ключами и без размер ровно тот же ? Уточнение: не только
свои юниты, но и вообще ВСЕ используемые юниты должны быть
(в идиале) скомпилированы с {$SMARTLINK ON}
Юра писал(а):В FPC 2.1.1 сделан внутренний линкер для Windows платформ,
А вот это не понятно - лапа M$ или технические сложности ?
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
Alexander писал(а):А вот это не понятно - лапа M$ или технические сложности ?
M$ ни при чем. Для (большинства) не-Windows платформ внешний линкер просто не нужен, т.к. ld из gnu binutils нормально делает свою работу. Однако порт этого ld для Win32 работает невообразимо медленно и жрет немеряно памяти, а порта для Win64 на момент создания внутреннего линкера вообще в природе не существовало.
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
- shade
- энтузиаст
- Сообщения: 879
- Зарегистрирован: 21.02.2006 19:15:48
- Откуда: http://shamangrad.net/
- Контактная информация:
