Re: gcc + console = 256512 byte
От: Lab74  
Дата: 29.05.06 18:58
Оценка:
1. В опциях компилятора
— отключить генерацию отладочной информации (generate debugging information),
— включить strip executable.

2. Использовать C библиотеки вместо C++.

Например, этот код у меня (wxDevCpp / MinGW) компилируется в 5.632 байт:
#include <stdio.h>
int main()
{
  printf("Hello World!\n");
  getchar();
}


А этот — в 266.240 байт:
#include <iostream>
using namespace std;
int main()
{
  cout << "Hello, world!\n";
  getchar();
}


Если оставаться в рамках C++, то приемлемого решения с GCC / MinGW я не вижу. Только пробовать другой компилятор. Borland C++ 5.5 (BCC32), например, справляется уже заметно лучше. Второй пример превращается в 113.152 байт. Надо еще посмотреть, какие у него там установки по умолчанию, может еще меньше можно сделать.

Можешь еще здесь посмотреть:

Reasons for 'large' objects, libraries and executables
http://mingw.org/MinGWiki/index.php/executables%20large

GNU C vs BCC — huge output file
http://groups.google.com/group/gnu.g++.help/browse_thread/thread/d3c5f95aa54f94ff/b672b9c7a3467bc2


Надеюсь, откликнутся еще более опытные коллеги. У меня самого пока очень поверхностное представление о C++.

Ну и свой код приведи, что ли.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.