Большой размер exe файла после компиляции mingw32

Модератор: Модераторы разделов

test
Сообщения: 2

Большой размер exe файла после компиляции mingw32

Сообщение test »

Если скомпилировать простейшую программку, то размер exe файла получается 466кб (после strip-260кб):

Код: Выделить всё

#include <iostream>

using namespace std;

int main()
{
  cout << "TEST" << endl;
  char c;
  cin >> c;

    return EXIT_SUCCESS;
}


Если же сделать программу без библиотеки <iostream>, то размер получается 15кб (после strip- 5кб):

Код: Выделить всё

#include <stdio.h>

int main()
{

 char c;
 printf("test\n");
 c=getchar();
    return 0;
}


g++ (GCC) 3.4.2

В чём проблемма?
Спасибо сказали:
PIF
Сообщения: 391

Re: Большой размер exe файла после компиляции mingw32

Сообщение PIF »

Я честно говоря C/C++ только начинаю, но думаю, что:
библиотека iostream содержит более тяжеловесные объекты ввода/вывода, чем билиотека stdio.h, которая объектов не содержит вообще, т.к. является стандартной библиотекой языка С.
И еще, я вроде где-то читал, что чем выше уровень абстракций языка, тем больше приложение жрет ресурсов.
Спасибо сказали:
Аватара пользователя
Valerius
Бывший модератор
Сообщения: 1469
Статус: Отпетый КДЕ'шник

Re: Большой размер exe файла после компиляции mingw32

Сообщение Valerius »

Для test: Собрал твой примерчик в КДевелопе, debug - 83кб, optimized - 8.2кб, после стрипа - 6.3кб. Я тоже не ахти какой програмер, но подозреваю что ты статически залинковался с iostream.
зы. gcc 4.0.1
Свобода есть тонкая полоска между диктатурой и анархией.

---------------------
Mandriva Linux PowerPack 2006 (Cooker-нутая) / KDE-3.5.1
Спасибо сказали:
Аватара пользователя
oav
Бывший модератор
Сообщения: 296

Re: Большой размер exe файла после компиляции mingw32

Сообщение oav »

(test @ Среда, 14 Сентября 2005, 17:45) писал(а):

http://mingw.org/mingwfaq.shtml#faq-C++size
Спасибо сказали:
Аватара пользователя
d_Sun
Сообщения: 291

Re: Большой размер exe файла после компиляции mingw32

Сообщение d_Sun »

3.2kb под QNX :P
Моя подпись сильно длинная :)
Спасибо сказали:
Аватара пользователя
Valerius
Бывший модератор
Сообщения: 1469
Статус: Отпетый КДЕ'шник

Re: Большой размер exe файла после компиляции mingw32

Сообщение Valerius »

(d_Sun @ Четверг, 15 Сентября 2005, 10:42) писал(а):3.2kb под QNX

И что из этого? Ты предлагаеш развернуть флейм?
Свобода есть тонкая полоска между диктатурой и анархией.

---------------------
Mandriva Linux PowerPack 2006 (Cooker-нутая) / KDE-3.5.1
Спасибо сказали:
Аватара пользователя
d_Sun
Сообщения: 291

Re: Большой размер exe файла после компиляции mingw32

Сообщение d_Sun »

(Valerius @ Четверг, 15 Сентября 2005, 12:27) писал(а):
(d_Sun @ Четверг, 15 Сентября 2005, 10:42) писал(а):3.2kb под QNX

И что из этого? Ты предлагаеш развернуть флейм?



Нет.
Моя подпись сильно длинная :)
Спасибо сказали:
test
Сообщения: 2

Re: Большой размер exe файла после компиляции mingw32

Сообщение test »

Попробовал скомпилировать старой версией g++ - 2.95.2
Получил 138kb (после strip - 73kb).
Это уже значительно лучше.

Аналогичное обсуждение нашёл здесь:
http://sourceforge.net/forum/forum.php?thr...&forum_id=48211
Спасибо сказали: