Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [C++]Размер файла после подключения fstream.h 
V
    Опции темы
qwerty789
Дата 22.1.2008, 13:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.12.2007

Репутация: нет
Всего: 1



Привет, использовал в программе ifstream из fstream.h и размер скомпилированого файла сразу увеличился в 10 раз примерно...
Код приводить не стал, так как в любом случае при использовании чего то из iostream, ifsteam размер собранной программы увеличивается очень сильно. Компилятор использовался gcc 4.2.1. Вообщем хотелось бы узнать из за чего это происходит и как избежать такого увеличения...

PM MAIL   Вверх
JackYF
Дата 22.1.2008, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(qwerty789 @  22.1.2008,  12:44 Найти цитируемый пост)
Компилятор использовался gcc 4.2.1. Вообщем хотелось бы узнать из за чего это происходит и как избежать такого увеличения...

параметры, передаваемые g++ - в студию!
возможно, стоит воспользоваться ключом -s.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
qwerty789
Дата 22.1.2008, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.12.2007

Репутация: нет
Всего: 1



Параметры -s и -Os
PM MAIL   Вверх
bsa
Дата 22.1.2008, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Скорее всего добавился отладочный код - от него программа сильно разбухает.

Добавлено через 2 минуты и 37 секунд
qwerty789, ты всю строку компиляции приведи.
PM   Вверх
qwerty789
Дата 22.1.2008, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.12.2007

Репутация: нет
Всего: 1



А как это можно проверить?
-s параметр должен вырезать отладочный код...
Среда codeblocks...

Добавлено через 13 минут и 53 секунды
Я через ide компилирую...где мне посмотреть остальные параметры?
PM MAIL   Вверх
JackYF
Дата 22.1.2008, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(qwerty789 @  22.1.2008,  14:10 Найти цитируемый пост)
Среда codeblocks...

в настройках компилятора там есть пункт - "показывать всю командную строку компиляции". Вот выбери её, и дай нам.
А вообще в кодеблоках ставишь релизную сборку - оно само -s и -Ox поставит.

Добавлено через 1 минуту и 28 секунд
 smile вот они, недостатки любой IDE, даже самой простой: чтобы понять, как она вызывает бэкэнды, нужно иногда изрядно повозиться.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
qwerty789
Дата 22.1.2008, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 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
PM MAIL   Вверх
JackYF
Дата 22.1.2008, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



qwerty789, 261 килобайт - это много?


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
qwerty789
Дата 22.1.2008, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.12.2007

Репутация: нет
Всего: 1



Было 20кб, может я конечно чего то не понимаю... =)
PM MAIL   Вверх
Dronchik
Дата 22.1.2008, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Звукач ёмаё
**


Профиль
Группа: Участник
Сообщений: 451
Регистрация: 1.5.2007

Репутация: 1
Всего: 37



JackYF, это конешно оффтоп но есть такая операционка, ты о ней уверен что слышал. Я про Колибри говорю. Так там всё гдета по 10 клиобайт стоит.
 
qwerty789, Перепроверь подключаемые библиотеки. Я под gcc не сидел но в Visual C++ 6 я для уменьшения размера иногда проверяю и коментирую на время некоторые части в заголовочных стандартных файлах специально для проги. Просмотри ifstream, какая функция может занять столько места. И закоментируй её(если конешно не будешь использовать). 


--------------------
Вместо слов делай дело, от которого ты фанатеешь. (с)

PM MAIL WWW ICQ   Вверх
qwerty789
Дата 22.1.2008, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.12.2007

Репутация: нет
Всего: 1



Спасибо, попробую сегодня...чуть позже отпишу результат...
PM MAIL   Вверх
bsa
Дата 22.1.2008, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



попробуй еще ключ -g0
PM   Вверх
JackYF
Дата 22.1.2008, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(Dronchik @  22.1.2008,  15:51 Найти цитируемый пост)
Так там всё гдета по 10 клиобайт стоит.

а есть ещё операционка, GNU/Linux называется. Так там много компилируется динамически, и маленькие программки тоже маленькие.
А есть всё писать на ассемблере, тогда да, бинарники маленькие будут. Только это капец, извините, с точки зрения архитектуры.

Это сообщение отредактировал(а) JackYF - 22.1.2008, 17:10


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
qwerty789
Дата 22.1.2008, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 7.12.2007

Репутация: нет
Всего: 1



Цитата(bsa @ 22.1.2008,  16:59)
попробуй еще ключ -g0

ничего не изменилось...
PM MAIL   Вверх
MAKCim
Дата 22.1.2008, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 2
Всего: 207



Цитата(qwerty789 @  22.1.2008,  16:31 Найти цитируемый пост)
C:\MinGW\lib\libws2_32.a 

вот это очень похоже на статическую библиотеку, которая может быть большой из-за чего и раздувается исполняемый файл



--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
2 Пользователей читают эту тему (2 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0776 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.