У меня есть тривиальная программа C ++ «Hello world», которая компилируется в исполняемый файл размером 500 КБ, выполняемый компилятором MinGW g ++ под Win XP.Некоторые говорят, что это вызвано библиотекой iostream и статической связью libstdc ++. Dll .
Использование опции компоновщика -s немного помогло (уменьшение50%), но я был бы удовлетворен только <10kB исполняемым файлом.Есть ли способ, как добиться этого с помощью компилятора MinGW?Переносимость не является большой проблемой для меня. </p>
Можно ли скопировать libstdc ++. Dll с исполняемым файлом, используя динамическое связывание?Если да, то как этого добиться?
Решено: Я использовал MinGW 3.4.Теперь я обновился до последней версии MinGW 4.6, а размер был уменьшен на 90% до 50 КБ, с опцией -s даже до 9 КБ, что вполне достаточно.В любом случае - спасибо всем за помощь.Вот мои результаты
C ++ Программа Hello World с использованием iostream
MinGW | no options | -s option
------------------------------
3.4 | 500kB | 286 kB
4.6 | 50kB | 9 kB