![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
qwerty789 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 7.12.2007 Репутация: нет Всего: 1 |
Привет, использовал в программе ifstream из fstream.h и размер скомпилированого файла сразу увеличился в 10 раз примерно...
Код приводить не стал, так как в любом случае при использовании чего то из iostream, ifsteam размер собранной программы увеличивается очень сильно. Компилятор использовался gcc 4.2.1. Вообщем хотелось бы узнать из за чего это происходит и как избежать такого увеличения... |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 6 Всего: 162 |
||||
|
||||
qwerty789 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 7.12.2007 Репутация: нет Всего: 1 |
Параметры -s и -Os
|
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Скорее всего добавился отладочный код - от него программа сильно разбухает.
Добавлено через 2 минуты и 37 секунд qwerty789, ты всю строку компиляции приведи. |
|||
|
||||
qwerty789 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 7.12.2007 Репутация: нет Всего: 1 |
А как это можно проверить?
-s параметр должен вырезать отладочный код... Среда codeblocks... Добавлено через 13 минут и 53 секунды Я через ide компилирую...где мне посмотреть остальные параметры? |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 6 Всего: 162 |
в настройках компилятора там есть пункт - "показывать всю командную строку компиляции". Вот выбери её, и дай нам. А вообще в кодеблоках ставишь релизную сборку - оно само -s и -Ox поставит. Добавлено через 1 минуту и 28 секунд ![]() |
|||
|
||||
qwerty789 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 7.12.2007 Репутация: нет Всего: 1 |
-------------- Сборка: Release ---------------
mingw32-g++.exe -Wall -Wall -O3 -IC:\MinGW\bin -c C:\CodeBlocks\Projects\main\main.cpp -o obj\Release\main.o mingw32-g++.exe -LC:\MinGW\bin -o bin\Release\main.exe obj\Release\main.o -s -s -s C:\MinGW\lib\libws2_32.a Output size is 261,00 KB Вот полная строка... Это сообщение отредактировал(а) qwerty789 - 22.1.2008, 16:32 |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 6 Всего: 162 |
qwerty789, 261 килобайт - это много?
|
|||
|
||||
qwerty789 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 7.12.2007 Репутация: нет Всего: 1 |
Было 20кб, может я конечно чего то не понимаю... =)
|
|||
|
||||
Dronchik |
|
|||
![]() Звукач ёмаё ![]() ![]() Профиль Группа: Участник Сообщений: 451 Регистрация: 1.5.2007 Репутация: 1 Всего: 37 |
JackYF, это конешно оффтоп но есть такая операционка, ты о ней уверен что слышал. Я про Колибри говорю. Так там всё гдета по 10 клиобайт стоит.
qwerty789, Перепроверь подключаемые библиотеки. Я под gcc не сидел но в Visual C++ 6 я для уменьшения размера иногда проверяю и коментирую на время некоторые части в заголовочных стандартных файлах специально для проги. Просмотри ifstream, какая функция может занять столько места. И закоментируй её(если конешно не будешь использовать). -------------------- Вместо слов делай дело, от которого ты фанатеешь. (с) |
|||
|
||||
qwerty789 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 7.12.2007 Репутация: нет Всего: 1 |
Спасибо, попробую сегодня...чуть позже отпишу результат...
|
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
попробуй еще ключ -g0
|
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 6 Всего: 162 |
а есть ещё операционка, GNU/Linux называется. Так там много компилируется динамически, и маленькие программки тоже маленькие. А есть всё писать на ассемблере, тогда да, бинарники маленькие будут. Только это капец, извините, с точки зрения архитектуры. Это сообщение отредактировал(а) JackYF - 22.1.2008, 17:10 |
|||
|
||||
qwerty789 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 7.12.2007 Репутация: нет Всего: 1 |
ничего не изменилось... |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 2 Всего: 207 |
вот это очень похоже на статическую библиотеку, которая может быть большой из-за чего и раздувается исполняемый файл -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
2 Пользователей читают эту тему (2 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |