Почему разный размер компиляции

Тема в разделе "Общие вопросы по С и С++", создана пользователем edoc, 2 ноя 2006.

  1. edoc

    edoc Гость

    Пробую учить C++ по книжке "Джесс Либерти - Освой С++ самостоятельно за 21 день"
    там даётся такой исходник:
    ---------------------------------------------
    #include <iostream.h>

    int main()
    {
    cout << "Hello World !\n";
    return 0;
    }
    ---------------------------------------------
    написано скомпилировать, но не написано как.
    прога Code Blocks + MinGW скомпилировала файл размером "465920 bytes"
    консольный Borland C++ Compiler 5.5 скомпилировал файл размером "112640 bytes"
    прога Dev-C++ 4 + MinGW (версия 2000-ного года) скомпилировала файл размером ~70KB
    прога Dev-C++ 5 beta (4.9.9.2) + MinGW скомпилировала файл размером "474990 bytes", а при включеной опции ""strip executable" выходит файл размером "266240 bytes"
    я ваще не разбираюсь чё по чём, но кажется многовато весит это всё дело на выходе, а где то видел что MinGW может скомпилировать "Hello World" размером 5KB.

    НАДЕЮСЬ ПОМОЖЕТ КТО НИБУТЬ
    P/S: Кто нибуть пробовал прогу "Relo", как в ней компилятор или линковщик настраивать, а то она только .obj выдаёт, а остальные кнопки не функционируют.
     
  2. Kmet

    Kmet Well-Known Member
    Java Team

    Регистрация:
    25 май 2006
    Сообщения:
    1.018
    Симпатии:
    1
    Было странно если бы странно если бы размеры были одинаковыми. Команды высокоуровнего языка(ну не подобрал выражения лучше) можно представить различным набором машиных инструкций.

    Можно и меньше, причем не только MinGW. Большей размер вызван скорее всего отладочной информацией и отключеной оптимизацией + рантайм библиотека.
     
  3. edoc

    edoc Гость

    А подскажите рецепт как сделать мелкий файл в MinGW или др. без всяких рантайм и отладок. Или как настроить это например в Code Blocks, хотя наверное все юзают другие проги :) .
     
  4. Kmet

    Kmet Well-Known Member
    Java Team

    Регистрация:
    25 май 2006
    Сообщения:
    1.018
    Симпатии:
    1
    MinGW это вроде порт GCC под винду.
    Опций компидяциии и линковки в GCC предостаточно. Пересказывать их желания нет, посмотри в мане или поищи в нете(например opennet.ru).

    Да этих front-end IDE как собак не резаных.
     
  5. edoc

    edoc Гость

    если компилятор делает из исходника размером 89 байт бинарник размером 73-440 KB это просто УЖАС
     
Загрузка...

Поделиться этой страницей