|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
Компиляция *.cpp компилятором gcc30.12.2018, 01:23. Показов 4604. Ответов 31
Метки нет (Все метки)
Недавно столкнулся с проблемой отсутствия библиотеки libgcc_s_dw2-1.dll (виртуалка с чистой виндой). Начал копаться и обнаружил, что , эта проблема свойственна только x86 компилятору(я использую mingw-w64). Файл, скомпилированный при помощи x64 компилятора(тож mingw-w64) запускается на ура. Что еще более странно, это,что если скомпилировать исходники компилятором gcc x86, а не g++ x86(пишу на плюсах), то ошибка пропадает. Пишу, чтобы вы помогли разобраться в этих аномалиях.Не люблю, когда что-то недопонимаю
0
|
|
| 30.12.2018, 01:23 | |
|
Ответы с готовыми решениями:
31
После установки Dev-Cpp 5.11 TDM-GCC 4.9.2 Setup.exe дает ошибку Exception elinifileexpectation in module devcpp․exe Компиляция проекта в gcc Непонятные проблемы с компилятором gcc |
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 04.01.2019, 00:17 [ТС] | |
|
Что же все-таки произойдет , если скомпилировать c++ исходники компилятором gcc?
0
|
|
|
415 / 150 / 48
Регистрация: 02.06.2016
Сообщений: 364
|
|||
| 04.01.2019, 08:28 | |||
|
1
|
|||
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|||
| 04.01.2019, 22:04 [ТС] | |||
|
Добавлено через 7 часов 59 минут Все это свойственно пустому проекту. В реальном проекте опция -static увеличивает размер файла в несколько раз.Опять же, если скомпилировать c++ исходники компилятором gcc(x86), получим файл маленького размера и при том все запускается без ошибок. Почему так происходит?
0
|
|||
|
415 / 150 / 48
Регистрация: 02.06.2016
Сообщений: 364
|
|
| 05.01.2019, 02:26 | |
|
Не компилирует у меня gcc простейший cpp код. На разных версиях пробовал.
1
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 05.01.2019, 16:44 [ТС] | |
|
у меня компилятор mingw-w64.Все компилирует)
0
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 06.01.2019, 12:03 [ТС] | |
|
Странно..
0
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|
| 06.01.2019, 15:10 [ТС] | |
|
Не, это не то. Пробовал опцию -lstdc++, ничего не поменялось, даже размер исполняемого файла не изменился.
Вы мне скажите: почему размеры файлов , скомпилированных с помощью gcc и g++ разнятся. Как я понял разница в обоих случаях лишь в линковке. Или что еще?
0
|
|
|
415 / 150 / 48
Регистрация: 02.06.2016
Сообщений: 364
|
|
| 07.01.2019, 20:08 | |
|
1
|
|
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
||||||||||||||
| 07.01.2019, 21:07 | ||||||||||||||
|
Добавлено через 10 минут Посмотреть какие конкретно программы вызывает gcc именно в вашем случае можно добавив при компиляции ключ -v (verbose).Добавлено через 3 минуты У меня, например, вот так:
Вот тоже самое, но для файла cpp (вызывается cc1plus.exe):
Да, все-таки в обычном MinGW нет отдельного сс. Но в корне это ничего не меняет, принцип остается тем же. Что MinGW-шный GCC, что UNIX-совый CC при передаче им файла *.c вызывают непосредственно компилятор cc1 (или cc1.exe для MinGW).Для MinGW w64 он должен лежать по пути похожему на вот такой: <каталог mingw>\libexec\gcc\x86_64-w64-mingw32\<версия>\.
2
|
||||||||||||||
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
|||||||
| 07.01.2019, 21:24 [ТС] | |||||||
0
|
|||||||
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
||
| 07.01.2019, 21:40 [ТС] | ||
|
Лично у меня запускается все, кроме g++(x86),где, собственно появляется ошибка отсутствия библиотеки libgcc_s_dw2-1.dll
Добавлено через 12 минут
0
|
||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
|
| 07.01.2019, 21:43 | |
|
1
|
|
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
||
| 07.01.2019, 22:43 [ТС] | ||
|
есть. Лежит тут C:\Program Files (x86)\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\i686-w64-mingw32\lib
А если появится нужда запустить программу на другой системе, на которой нет mingw и следовательно этой либы? Тащить ее с собой тоже не разумно, потому что есть другой вариант: скомпилировать этот же код с помощью gcc. Не знаю что там происходит, но проблема исчезает, да и к тому же размер исполняемого файла уменьшается примерно на 1 кб. Очень странно.Это я и пытаюсь разобрать подробно. Почему так происходит. Добавлено через 4 минуты
0
|
||
|
415 / 150 / 48
Регистрация: 02.06.2016
Сообщений: 364
|
|||||||
| 07.01.2019, 23:06 | |||||||
|
Напишите так и все станет на свои места:
1
|
|||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
|||
| 07.01.2019, 23:11 | |||
|
libgcc_s очевидно идет зависимостью к libstdc++ (ключ линковки, который вы указывали -lstdc++, подключает именно ее), которую подключает по умолчанию g++. Если ваш код на самом деле не требует libstdс++, то получается, что убрав ее из зависимостей, вы избавились и от libgcc_s. Целиком и полностью все зависит от того кода, который вы компилируете.
1
|
|||
|
120 / 4 / 1
Регистрация: 15.06.2016
Сообщений: 236
|
||||||
| 08.01.2019, 00:24 [ТС] | ||||||
![]() Добавлено через 5 минут с флагом -lstdc++ ошибок нет
0
|
||||||
| 08.01.2019, 00:24 | |
|
Помогаю со студенческими работами здесь
20
Учим code::blocks компилировать gcc компилятором как скомпилировать исходник на Python компилятором gcc? Как записать компиляцию файла С в cgi компилятором gcc? Можно ли компилятором gcc создать COM объекты, сервер, в частности? Как осуществляется компиляция и компоновка программы со строковым компилятором? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во
всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
|