Форум программистов, компьютерный форум CyberForum.ru

Codeblocks > C++ - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 53, средняя оценка - 4.83
XiloManX
 Аватар для XiloManX
641 / 145 / 30
Регистрация: 11.02.2013
Сообщений: 274
11.02.2013, 20:34     Codeblocks > C++ #1
Привет, всем форумчанам! Решил научиться программировать на C++. Примеры прогамм, пишу в IDE Code::Blocks (компилятор mingw) под Windows.

Как написано в книге по C++, начал с примера "Hello World!", и заметил, что на выходе получается немерянно здоровенный бинарник, размером в 943kB. Я так понял, что к бинарнику подключяются какие-то посторонние функции или вся либа "iostream". И в связи с этим, вопрос. Как сделать так, чтобы подключались только те функции, которые указаны в исходнике? Дело в том, что в Linux'е, этот же пример на C++, весит примерно ~5kB.

C++
1
2
3
4
5
6
7
8
9
#include <iostream>
 
using namespace std;
 
int main()
{
    cout << "Hello world!" << endl;
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2013, 20:34     Codeblocks > C++
Посмотрите здесь:

Codeblocks! C++
codeblocks C++
Codeblocks C++
C++ codeblocks
CodeBlocks C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrCold
14.02.2013, 10:32     Codeblocks > C++
  #21

Не по теме:


А, ясно,
ну Гугл говорит что Windows Forms для С++ там нет,
только для VB и C#
поэтому поинтересовался

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
XiloManX
 Аватар для XiloManX
641 / 145 / 30
Регистрация: 11.02.2013
Сообщений: 274
15.02.2013, 02:06  [ТС]     Codeblocks > C++ #22
Цитата Сообщение от Tiva Посмотреть сообщение
Цитата Сообщение от XiloManX
Да, но Visual Studio платный и очень громоздкий, поэтому я выбрал лёгкий и бесплатный CodeBlocks.
открою тайну, но уже крякнуто всё, и везде. гугли.
Это не тайна, я это и так знаю. А ты видел слово громоздкий? И тут дело не в памяти, просто не люблю искуственно раздутые программы, да и ещё платные.
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
15.02.2013, 02:21     Codeblocks > C++ #23
Ребят, по правилам запрещено обсуждать "варез". А так - в любом случае исполняемый файл в Win у MinGW будет больше, нежели у MS. Компилятор Microsoft бесплатный, платна сама IDE в основном. Компилятор входит в пакет windows sdk, который легко можно скачать. И, вроде, некоторые IDE поддерживают MS компилятор. Тот же Code::Blocks.
XiloManX
 Аватар для XiloManX
641 / 145 / 30
Регистрация: 11.02.2013
Сообщений: 274
15.02.2013, 03:04  [ТС]     Codeblocks > C++ #24
Вчера поигрался с Code::Blocks, и понял, почему получается такой большой исполняемый файл, на выходе, по мимо тех причин, о которых я писал ранее. Как оказалось, стабильная "Code::Blocks v12.11" со встроенным компилятором MinGW, содержит нестабильную версию компилятора из ночной сборки. Видимо сборщик этого компилятора, либо где-то сделал ошибку и компилятор просто записывал какой-то мусор, либо сделал так, что-бы по умолчанию, при компиляции, подключались какие-то библиотеки. А может дело в библиотеках, которые поставляются с компилятором.

Вообшем, я попробовал сделать раздельную установку (установил: отдельно Code::Blocks v12.11, отдельно компилятор MinGW 20120426). Компилятор установил в ту же директорию, куда установился Code::Blocks, и указал пути к компилятору MinGW и отладчику GDB, в настройках Code::Blocks.

И оказалось следующее:
1. После компиляции в отладочном режиме (Debug), исполняемый файл имеет размер 57.26 kB.
2. После компиляции в облегчённом режиме (Release), исполняемый файл имеет размер 8.50 kB.
3. Никаких ключей в Code::Blocks, выставлять не надо, чтобы добиться того же результата.
4. Не надо перемещать компилятор, в директорию без пробелов, чтобы иметь возможность компилировать программы. Потому как, та версия компилятора MinGW, которая идёт с "Code::Blocks v12.11" по умолчанию, не воспринемает путь к компилятору с пробелами, из-за чего, не компилируютя программы.
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
15.02.2013, 03:12     Codeblocks > C++ #25
Цитата Сообщение от XiloManX Посмотреть сообщение
2. После компиляции в облегчённом режиме (Release), исполняемый файл имеет размер 8.50 kB.
а командная строка в этом случае какая?
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
15.02.2013, 03:13     Codeblocks > C++ #26
XiloManX, Это с динамической компоновкой. В любой другой папке, отличной от той, в которой исполняемый файл находится сейчас, он, возможно, не запустится. Придется таскать DLL от MinGW за ней, или использовать статическую компоновку. Скорей всего в той версии, про которую Вы говорите, статическая компоновка была по умолчанию, либо просто не было динамической библиотеки, поэтому компоновка шла сразу статическая. Если Вы добавите флаг -static, что бы не таскать DLL с программой, то размер опять увеличится до 500 kb.
Для эксперимента, попробуйте переименовать или переместить на время файл libstdc++-6.dll в папке bin компилятора.
XiloManX
 Аватар для XiloManX
641 / 145 / 30
Регистрация: 11.02.2013
Сообщений: 274
15.02.2013, 03:39  [ТС]     Codeblocks > C++ #27
Цитата Сообщение от Toshkarik Посмотреть сообщение
И, вроде, некоторые IDE поддерживают MS компилятор. Тот же Code::Blocks.
Может и поддерживают, но у меня лично, откампилировать программу в Code::Blocks, с подключённым компилятором Visual C++, не получилось. И потом, мне больше нравится компилятор GCC. Превычней, так как, доводилось с ним работать.

Добавлено через 8 минут
Цитата Сообщение от kravam Посмотреть сообщение
а командная строка в этом случае какая?
А что имеется ввиду, под командной строкой? "Build Log" что ли?

Добавлено через 11 минут
Цитата Сообщение от Toshkarik Посмотреть сообщение
XiloManX, Это с динамической компоновкой. В любой другой папке, отличной от той, в которой исполняемый файл находится сейчас, он, возможно, не запустится. Придется таскать DLL от MinGW за ней, или использовать статическую компоновку. Скорей всего в той версии, про которую Вы говорите, статическая компоновка была по умолчанию, либо просто не было динамической библиотеки, поэтому компоновка шла сразу статическая. Если Вы добавите флаг -static, что бы не таскать DLL с программой, то размер опять увеличится до 500 kb.
Для эксперимента, попробуйте переименовать или переместить на время файл libstdc++-6.dll в папке bin компилятора.
Может быть. Сейчас попробую.

Вот только я не понемаю, неужели нельзя сделать статическое подключение функций из библиотеки, по отдельности.
То есть, только тех, которые находятся в исходнике. На Ассемблере - это делается элементарно, а вот на C/C++, как-то через ж..пу. Какой смысл таскать всю библиотеку (статическую), в одном исполняемом файле с функциями, которыми никогда не воспользуешься?
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
15.02.2013, 03:45     Codeblocks > C++ #28
XiloManX, Все так и есть, в файле не обязательно хранится код функций, там так же могут хранится таблицы символов, используемые, в основном, для отладки. В gcc есть ключ, к примеру, - -s. Он удаляет эти таблицы, значительно уменьшая размер исполняемого файла.
XiloManX
 Аватар для XiloManX
641 / 145 / 30
Регистрация: 11.02.2013
Сообщений: 274
15.02.2013, 03:50  [ТС]     Codeblocks > C++ #29
Цитата Сообщение от Toshkarik Посмотреть сообщение
XiloManX, Все так и есть, в файле не обязательно хранится код функций, там так же могут хранится таблицы символов, используемые, в основном, для отладки. В gcc есть ключ, к примеру, - -s. Он удаляет эти таблицы, значительно уменьшая размер исполняемого файла.
А ты читал тему сначала? Я об этом уже писал. Только не писал ключ, потому что он, стоит по умолчанию в Code::Blocks, в облегчённом режиме (Release),
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
15.02.2013, 04:00     Codeblocks > C++ #30
Цитата Сообщение от XiloManX Посмотреть сообщение
А ты читал тему сначала?
Да, читал.

Учитывайте еще, что cout это объект класса, который может состоять из объектов других классов. Компилятор не может просто так взять, и выкинуть функцию-член класса. Сравните, например, размер исполняемого файла такого кода:
C++
1
2
3
4
5
6
7
#include <cstdio>
 
 
int main() {
   printf( "Hello World!!!" );
   return 0;
}
В статической компоновке, файл занимает, по крайней мере у меня, 36kb, против 678kb с использованием объекта std::cout.
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
15.02.2013, 04:10     Codeblocks > C++ #31
Цитата Сообщение от Toshkarik Посмотреть сообщение
В любой другой папке, отличной от той, в которой исполняемый файл находится сейчас, он, возможно, не запустится.
запустится. Дело в том, что при установке MinGW он запихивает dll-ки в системные директории и по фигу на самом деле, в какой папке находится экзешник.

Но вот на том компе, где MinGW не установлен- там не запустится и тогда -static

Цитата Сообщение от XiloManX Посмотреть сообщение
А что имеется ввиду, под командной строкой? "Build Log" что ли?
ну когда ты тычешь на F9 для компиляции или куда там, запускается файл gcc или g++ с опциями; это наверное не видно, но это не значит, что она нигде не прописана;

В Dev-C++ по звершении компиляции я тычу "Журнал компиляции" и вижу:

Компилятор: Default compiler
Выполнение g++.exe...
g++.exe "E:\vso_moio\Программирование_на_C++\readme\www_crossplatform.ru_node_58\main.cpp" -o "E:\vso_moio\Программирование_на_C++\readme\www_crossplatform.ru_node_58\main.exe" -static -I"E:\Dev_Cpp_nomingw\include" -L"E:\Dev_Cpp_nomingw\lib"
Выполнение завершено
Компиляция успешна
Вот нечто подобное должно быть в твоей IDE;
Тут и видны все ключи и все опции с которыми работал компилятор, даже если они не прописаны явно и можно просмотреть чем отличается компиляция в режиме Debug от компиляции в режиме Release.

Цитата Сообщение от XiloManX Посмотреть сообщение
Какой смысл таскать всю библиотеку (статическую), в одном исполняемом файле с функциями, которыми никогда не воспользуешься?
никакого. C/C++ ни при чём абсолютно, это заморочки производителей gcc. Я встречался с версиями gcc где такой фигни не было или статическая библиотека была настолько мала, что была именно для проформы. По-моему это есть в Dev-C++ в компиляторе, который идёт по умолчанию, но по умолчанию там версия gcc 3.4.2, так что вот.
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
15.02.2013, 04:19     Codeblocks > C++ #32
Цитата Сообщение от kravam Посмотреть сообщение
при установке MinGW
Я использую сборки, которые находятся в архивах. Да и установщик вряд ли что то добавляет в системные папки. Дело в переменной среды Path, в которой прописывается путь до папки bin компилятора, где и лежит dll.
XiloManX
 Аватар для XiloManX
641 / 145 / 30
Регистрация: 11.02.2013
Сообщений: 274
15.02.2013, 04:46  [ТС]     Codeblocks > C++ #33
Цитата Сообщение от kravam Посмотреть сообщение
Цитата Сообщение от XiloManX Посмотреть сообщение
А что имеется ввиду, под командной строкой? "Build Log" что ли?
ну когда ты тычешь на F9 для компиляции или куда там, запускается файл gcc или g++ с опциями; это наверное не видно, но это не значит, что она нигде не прописана;
В Dev-C++ по звершении компиляции я тычу "Журнал компиляции" и вижу:
Компилятор: Default compiler
Выполнение g++.exe...
g++.exe "E:\vso_moio\Программирование_на_C++\readme\www_crossplatfor m.ru_node_58\main.cpp" -o "E:\vso_moio\Программирование_на_C++\readme\www_crossplatfor m.ru_node_58\main.exe" -static -I"E:\Dev_Cpp_nomingw\include" -L"E:\Dev_Cpp_nomingw\lib"
Выполнение завершено
Компиляция успешна
Вот нечто подобное должно быть в твоей IDE;
Тут и видны все ключи и все опции с которыми работал компилятор, даже если они не прописаны явно и можно просмотреть чем отличается компиляция в режиме Debug от компиляции в режиме Release.
Ну это "Build Log (табло лога сборки)"?, а не командная строка.

Собственно вот (раздельная установка) (без устаноленных флагов вручную):
-------------- Build: Debug in Example (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall -fexceptions -g -c "C:\Documents and Settings\Name\My Documents\CodeBlocks\Example\main.cpp" -o obj\Debug\main.o
mingw32-g++.exe -o bin\Debug\Example.exe obj\Debug\main.o
Output size is 57.76 KB
Process terminated with status 0 (0 minutes, 1 seconds)
0 errors, 0 warnings (0 minutes, 1 seconds)
-------------- Build: Release in Example (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall -fexceptions -O2 -c "C:\Documents and Settings\Name\My Documents\CodeBlocks\Example\main.cpp" -o obj\Release\main.o
mingw32-g++.exe -o bin\Release\Example.exe obj\Release\main.o -s
Output size is 8.50 KB
Process terminated with status 0 (0 minutes, 1 seconds)
0 errors, 0 warnings (0 minutes, 1 seconds)
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
15.02.2013, 04:59     Codeblocks > C++ #34
Цитата Сообщение от Toshkarik Посмотреть сообщение
Я использую сборки, которые находятся в архивах.
я тоже

Цитата Сообщение от Toshkarik Посмотреть сообщение
Да и установщик вряд ли что то добавляет в системные папки.
проверим в своё время.

Цитата Сообщение от Toshkarik Посмотреть сообщение
Дело в переменной среды Path, в которой прописывается путь до папки bin компилятора, где и лежит dll.
нет. Path тут никаким боком. Представляете работу системного загрузчика? Он просто пробегается по секции импорта и там какие dll-ки написаны, те он и загружает. А прописаны они без абсолютных путей. Просто имя, и всё. Как думаете, будет он обращаться к папке bin? Не будет. Это чистейшей воды теория. А обращается он туда, где они и должны быть:
C:\WINDOWS\system32
А вот сейчас мы всё это дело всё и проверим.

Так, кропаем hello, word без static, смотрим таблицу импорта каким-нибудь редактором и наблюдаем там библиотеку libgcc_s_dw2-1.dll, эта билиотека в C:\WINDOWS\system32. вот оттуда она и загружается; и именно в наличии этой библиотеки и есть разница- при -static эта библиотека будет отсутствовать в таблице импорта

Но справедливости ради надо заметить, что эта же библиотека также находится в папке bin; так, может загрузчик именно из этой папки (благодаря Path) и берёт эту библиотеку? Что ж, идти так до конца. Удалим эту библиотеку из папки bin и запустим наш "Hello, word!" и увидим что он запустится без сучка и задоринки, хотя для запуска ему необходима libgcc_s_dw2-1.dll, а её в папке bin нет (мы её временно удалили).

++++++++++++++++++++++++++++++++++++++++++++++++++

Как-нибудь я сподоблюсь разузнать dll-ки, которые идут с системой, а которые привносятся всякими левыми программами, да руки не доходят никак.
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
15.02.2013, 05:09     Codeblocks > C++ #35
Цитата Сообщение от kravam Посмотреть сообщение
я тоже
Тогда причем тут установщик?

kravam, я уже проверил. Как я и говорил, все дело в переменной path.

Цитата Сообщение от kravam Посмотреть сообщение
libgcc_s_dw2-1.dll, эта билиотека в C:\WINDOWS\system32
Нет у меня в system32 ни одной библиотеки gcc, и не было.

Если я скомпилирую с динамической линковкой, при этом перемещу файл libstdc++-6.dll из папки bin компилятора, то программа не запускается, и просит этот самый DLL. Как только я его возвращаю, она нормально запускается.

Что бы проверить я переместил библиотеку из папки bin, запустил программу, и, как уже сказал, она не запустилась, требуя эту dll. После чего я создал директорию C:\test, поместил в нее эту самую dll, и добавил ее в переменную окружения path. И программа заработала.

И, наконец, нашел на просторах интернета:
Windows ищет Dll следующим образом:
1. Сначала проверяются все уже загруженные библиотеки, если среди них находится Dll с тем же именем, программа связывается с ней.
2. Затем Windows пытается найти Dll в папке, где расположен исполняемый файл программы, использующей Dll.
3. Затем, Windows пытается найти Dll в текущем каталоге.
4. Затем, Windows пытается найти Dll в системном каталоге Windows (что-то вроде C:\Windows\System32 для NT-систем)
5. Затем, Windows пытается найти Dll в каталоге Windows (что-то вроде C:\Windows)
6. Наконец, Windows пытается найти Dll в одной из папок, перечисленных в переменной окружения PATH
XiloManX
 Аватар для XiloManX
641 / 145 / 30
Регистрация: 11.02.2013
Сообщений: 274
15.02.2013, 05:11  [ТС]     Codeblocks > C++ #36
Цитата Сообщение от Toshkarik Посмотреть сообщение
XiloManX, Это с динамической компоновкой. В любой другой папке, отличной от той, в которой исполняемый файл находится сейчас, он, возможно, не запустится. Придется таскать DLL от MinGW за ней, или использовать статическую компоновку. Скорей всего в той версии, про которую Вы говорите, статическая компоновка была по умолчанию, либо просто не было динамической библиотеки, поэтому компоновка шла сразу статическая. Если Вы добавите флаг -static, что бы не таскать DLL с программой, то размер опять увеличится до 500 kb.
Для эксперимента, попробуйте переименовать или переместить на время файл libstdc++-6.dll в папке bin компилятора.
И действительно. Происходит динамическая компановка по умолчанию.
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
15.02.2013, 05:18     Codeblocks > C++ #37
Цитата Сообщение от Toshkarik Посмотреть сообщение
Тогда причем тут установщик?
может он просто в архиве, установщик-то? Или файлы из архива берёт.

Цитата Сообщение от Toshkarik Посмотреть сообщение
Если я скомпилирую с динамической линковкой
исходник можно?

Ну всё ясно. Сперва C:\Windows\System32, потом PATH; но говорить, что установщик не пихает *.dll в C:\Windows\System32 неверно- другое дело, что вы им не пользуетесь.
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
15.02.2013, 05:21     Codeblocks > C++ #38
Цитата Сообщение от kravam Посмотреть сообщение
исходник можно?
Код из первого сообщения темы.
Цитата Сообщение от kravam Посмотреть сообщение
что установщик не пихает *.dll в C:\Windows\System32 неверно- другое дело, что вы им не пользуетесь.
Я и не говорил, что он не копирует туда dll. Я всего лишь сказал, что вряд ли он это делает. И можно уточнить на всякий случай - о каком установщике идет речь?
XiloManX
 Аватар для XiloManX
641 / 145 / 30
Регистрация: 11.02.2013
Сообщений: 274
15.02.2013, 05:37  [ТС]     Codeblocks > C++ #39
Сборка простой программы в Code::Blocks, со статической компановкой (раздельная установка) (с флагом -static или -static-libstdc++)):
C++
1
2
3
4
5
6
7
8
#include <iostream>
 using namespace std;
 
 int main()
 {
    cout << "Hello world!" << endl;
    return 0;
 }
Логи сборки:
-------------- Build: Debug in Example (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall -fexceptions -g -c "C:\Documents and Settings\Name\My Documents\CodeBlocks\Example\main.cpp" -o obj\Debug\main.o
mingw32-g++.exe -o bin\Debug\Example.exe obj\Debug\main.o -static
Output size is 1.38 MB
Process terminated with status 0 (0 minutes, 3 seconds)
0 errors, 0 warnings (0 minutes, 3 seconds)
-------------- Build: Release in Example (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall -fexceptions -O2 -c "C:\Documents and Settings\Name\My Documents\CodeBlocks\Example\main.cpp" -o obj\Release\main.o
mingw32-g++.exe -o bin\Release\Example.exe obj\Release\main.o -static -s
Output size is 635.00 KB
Process terminated with status 0 (0 minutes, 2 seconds)
0 errors, 0 warnings (0 minutes, 2 seconds)
Добавлено через 15 минут
Цитата Сообщение от Toshkarik Посмотреть сообщение
Учитывайте еще, что cout это объект класса, который может состоять из объектов других классов. Компилятор не может просто так взять, и выкинуть функцию-член класса. Сравните, например, размер исполняемого файла такого кода:

C++
1
2
3
4
5
#include <cstdio>
int main() {
 printf( "Hello World!!!" );
 return 0;
}
Логи сборки:

В статической компоновке, файл занимает, по крайней мере у меня, 36kb, против 678kb с использованием объекта std::cout.
А у меня, вот что...

Сборка выше указанной простой программы в Code::Blocks, со статической компановкой (раздельная установка) (с флагом -static или -static-libstdc++)):

-------------- Build: Debug in Example (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall -fexceptions -g -c "C:\Documents and Settings\Name\My Documents\CodeBlocks\Example\main.cpp" -o obj\Debug\main.o
mingw32-g++.exe -o bin\Debug\Example.exe obj\Debug\main.o -static
Output size is 49.66 KB
Process terminated with status 0 (0 minutes, 0 seconds)
0 errors, 0 warnings (0 minutes, 0 seconds)
-------------- Build: Release in Example (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall -fexceptions -O2 -c "C:\Documents and Settings\Name\My Documents\CodeBlocks\Example\main.cpp" -o obj\Release\main.o
mingw32-g++.exe -o bin\Release\Example.exe obj\Release\main.o -static -s
Output size is 7.50 KB
Process terminated with status 0 (0 minutes, 0 seconds)
0 errors, 0 warnings (0 minutes, 0 seconds)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.02.2013, 05:37     Codeblocks > C++
Еще ссылки по теме:

Code::Bloks C++, В чем разница "codeblocks-12.11-setup.exe" и "codeblocks-12.11mingw-setup.exe" C++
С++ CodeBlocks C++
C++ CodeBlocks 13.12 vs 10.05

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
15.02.2013, 05:37     Codeblocks > C++ #40
Цитата Сообщение от Toshkarik Посмотреть сообщение
Я и не говорил, что он не копирует туда dll. Я всего лишь сказал, что вряд ли он это делает. И можно уточнить на всякий случай - о каком установщике идет речь?
Да, пожалуй вы правы. Установщик в системные директории ничё не распихивает по крайней мере libstdc++-6.dll там не оказалось. libgcc_s_dw2-1.dll оказалась там скорее всего из-за GIMP-а потому, что он тоже использует такую библиотеку. Ну не сам же я её пихал в GIMP да ещё и в system32

если чё mingw-get-inst-20120426.exe

Но вернёмся к нашим баранам.
Цитата Сообщение от kravam Посмотреть сообщение
В любой другой папке, отличной от той, в которой исполняемый файл находится сейчас, он, возможно, не запустится.
запустится, проверено. Да и почему бы ему не запуститься-то? dll в bin- ну пусть так и будет. Теоретических предпосылок тык скыть к незапуску не вижу.
Yandex
Объявления
15.02.2013, 05:37     Codeblocks > C++
Ответ Создать тему
Опции темы

Текущее время: 09:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru