Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
Всем доброй ночи. Какие опции надо указать компилятору, чтобы уменьшить размеры программы? В общем дело в следующем: - я скачал wxDev-C++ - сделал пустое приложение с формой ( из объекта wxFrame ) типа Hello word - скомпилировал - получился exe-шник почти 10 М (похоже компилятор все библиотеки собрал в одну кучу) Надо какие-то опции компилятору указать. Может быть кто-нибудь в курсе? Короче, хотелось бы контролировать сборку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 22:15 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
S0ME0NE, наверное, статическая линковка? Это нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 22:18 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
Можешь почитать доку на предмет "strip all symbols". Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 22:24 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
Где бы почитать про все эти опции, да на русском языке. А то я с английским языком, мякго говоря, грубо выражаясь, не очень. Тут дали ссылку, но я никак не пойму. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 22:26 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
S0ME0NE, mingw такой min. Очевидно вам все же придется детально разобраться с опциями компилятора и компоновщика и использываемого фреймворка вообще. Без чтения англоязычных хелпов и манулов не получится. А вообще, мне в той сцилке вот этот совет разрабов понравился. Прислушайтесь, чуваки секут. use Microsoft C++ compiler instead of gcc (cygwin, mingw) on Windows. It does produce smaller and faster executable. перевод: юзай MSVC и не выпендривайся, он лучше ****. :D Модератор: литературный язык, пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 23:35 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
valkotS0ME0NE, mingw такой min. Очевидно вам все же придется детально разобраться с опциями компилятора и компоновщика и использываемого фреймворка вообще. Без чтения англоязычных хелпов и манулов не получится. А вообще, мне в той сцилке вот этот совет разрабов понравился. Прислушайтесь, чуваки секут. use Microsoft C++ compiler instead of gcc (cygwin, mingw) on Windows. It does produce smaller and faster executable. перевод: юзай MSVC и не выпендривайся, он лучше *****. :D Да ну. Это если реально нужно чуть покомпактнее и чуть побыстрее, и, самое главное - если ты VS используешь. А ТС - wxDev-C++ решил использовать. Там одним из плюсов является быстрое развертывание среды разработки. И переносимость ее, хоть на флешке. Как и в прочих игрушках типа CodeBlocks и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 23:45 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
чччДДа ну. Это если реально нужно чуть покомпактнее и чуть побыстрее, и, самое главное - если ты VS используешь.Ударение надо ставить на "чуть". Но среду надо знать в любом случае, иначе даже той обещанной "чуть" не получишь. S0ME0NE, учи английский. Хочешь писать программы - учи английский. Иного пути просто нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 23:55 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
valkot Пусть MS visual studio самая лучшая, но она только для windows и к тому же стоит денег. (можно конечно использовать express, если собираешься баловаться программированием, а не работать за деньги) И к стати сказать Windows не единственная система в мире, на сегодняшний день. А что будет завтра. Андроид и др. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 07:43 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
White OwlS0ME0NE, учи английский. Хочешь писать программы - учи английский. Иного пути просто нет.Добрый день Белая Сова. Ваши знания это Ваш авторитет, как результат долгой работы. Кто-то сказал, что для уважения нужен труд. Вас знают и уважают на этом форуме. Программы я давно правлю, но на других языках, vba, 1c, когда-то был COBOL, Clipper. И в основном это были чужие тексты программ. Фирменные не фирменные, всё равно чужие. Свои я делал всего ничего да и то по ТЗ. Т.е. я ещё и предметной областью не владею. Мне надо чтобы кто-то написал техническое задание. Благо дело постановщики у нас есть. Пока есть. А что будет дальше не знаю. Мне уже 51 год. Что будет то будет. Вот решил что надо C++ выучить и библиотеку wxWidgtes , хотя на работе никто не требует. Ни английского ни тем более C++. Молодёжь наглеет, (пишут на чём хотят и учатся в рабочее время). А на мне старые программы и старые языки. И слава богу, потому что я пока нужен. И программы я правлю именно так как написано в ТЗ. (последние три года - это 1С 7.7 зарплата кадры, ну и старьё всякое) В общем пока моей работой довольны. А что дальше будет не знаю. По мимо 1С нужен второй инструмент. Раньше, да и сейчас пока, это был vba или vb6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 08:55 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
klen_valkot Пусть MS visual studio самая лучшая, но она только для windows и к тому же стоит денег. (можно конечно использовать express, если собираешься баловаться программированием, а не работать за деньги) И к стати сказать Windows не единственная система в мире, на сегодняшний день. А что будет завтра. Андроид и др. к чему вы это написали? Посмотрите название темы. На вики разработчиков библиотеки, которую автор решил использовать, даны рекомендации по уменьшению размеров получаемых програм, на одну из которых мне интересно было обратить внимание автора. Это хоть как-то в контексте его вопроса. Ваша бурная реакция с элементами предскания будущего рынка ОС - никак. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 09:31 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
S0ME0NEКакие опции надо указать компилятору, чтобы уменьшить размеры программы? Общий или только размер .exe файла ? Хоть это отнюдь и не является главной целью программирования -- создание маленьких по объёму программ -- для уменьшения размера выполняемого файла придумана динамическая линковка, т.е. использование .dll. Но при этом предполагается, что .dll-и используются совместно с другими программами, отсюда получается экономия. Также есть проблема, что .dll в отличие от .lib неделимы, из .lib линкер берёт только те символы, которые реально нужны, а .dll либо линкуется вся, либо не линкуется вообще (линкуются также только используемые символы, но .dll нельзя распилить на куски и взять только то, что используется). S0ME0NEВ общем дело в следующем: - я скачал wxDev-C++ - сделал пустое приложение с формой ( из объекта wxFrame ) типа Hello word - скомпилировал - получился exe-шник почти 10 М (похоже компилятор все библиотеки собрал в одну кучу) Конкретнее, какие библиотеки и что из них ты используешь. S0ME0NEНадо какие-то опции компилятору указать. Может быть кто-нибудь в курсе? Короче, хотелось бы контролировать сборку. У mingw нет своей документации, на сколько я знаю. Всё , что есть, на gcc.gnu.org. Русской версии я не знаю. Пользуйся google translate. Также размер .exe зависит от режимов сборки, в основном, от наличия отладочной информации (очень сильно) и режима оптимизации. Причём есть оптимизация на скорость, есть на размер программы. Я не помню, чтобы GCC поддерживал второе, у них есть кажется только на скорость. Это опции -O0 ... -O2, -O3, чем больше число , тем больше оптимизация по скорости. -O0 -- выключена оптимизация вообще (можно сказать, debug-сборка). Но это обобщённые параметры, они включают и выключают целый набор ключей каждая. Убрать отладочную информацию при компиляции -- убрать ключ -g, убрать её при сборке -- добавить ключ -s . Ещё раз, я лично считаю борьбу за размер выполняемого файла дебилизмом в 90% случаев. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 13:15 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
S0ME0NEГде бы почитать про все эти опции, да на русском языке. А то я с английским языком, мякго говоря, грубо выражаясь, не очень. Тут дали ссылку, но я никак не пойму. авторI'm using wxDev-C++ and MinGW under Windows. I tried compile a simple program as Hello word and get a file.exe nearly 10 M It was a blank project wxWidgets Frame. Ты используешь фреймфорк. Он делает дохрена разной работы. Но ты её естественно не видишь в таком маленьком приложеньице. Потому что оно привлекает всё эту мощь, но не использует, пока. Не удивительно, что приложение будет большим. Это характерно для всех приложений, написанных с использованием фреймворков, даже очень маленьких. Потому что они сразу "берут всё" от фреймворка, хотя и не используют может быть. Ну, это так, на пальцах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 13:22 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
S0ME0NEВот решил что надо C++ выучить и библиотеку wxWidgtes , хотя на работе никто не требует. Ни английского ни тем более C++. Тем более что ты только изучаешь, плюнь на эту дурацкую проблему. Лучше трать время на изучение языка и библиотек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 13:23 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
MasterZivПричём есть оптимизация на скорость, есть на размер программы. Я не помню, чтобы GCC поддерживал второе, у них есть кажется только на скорость. -Os Optimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 15:32 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
MasterZivУра! Нашёл. Опции линковки В общем тут всё на русском. Я попробовал wxFrame, затем wxDialog. Размеры в общем одинаковые, но как говорит MasterZiv это не главное. Короче компоновщику указал команду -s и файл стал меньше почти на 2,5 мегабайта. Интересно поиграться с компилятором и компоновщиком. К стати сказать, в IDE wxDev можно не использовать библиотеку wxWidgets, а создать просто windows app. Размер 9 килобайт. Правда, сейчас это не главное. В общем - бесплатное IDE есть - бесплатный и управляемый компилятор есть - несрочное тех. задание то же есть а в 2014-м году Питерские мальчишки обещали для C++ новое IDE сделать. (но об этом уже здесь нельзя) Всем большое спасибо за Ваше время и наставления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 21:41 |
|
||
|
MinGW для Win32. При компоновке, как не брать некоторые dll-ки в exe-шник?
|
|||
|---|---|---|---|
|
#18+
S0ME0NE...Вот решил что надо C++ выучить и библиотеку wxWidgtes ... Возьмите Qt + QtCreator. Правда, компактности приложения там добиться, э...сложнее :), но: документация, комьюнити, поддержка, качество, литература... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2013, 22:04 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38432124&tid=2019916]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
173ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 288ms |

| 0 / 0 |
