Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2022, 10:25   #1
KoTTBarsik
Пользователь
 
Регистрация: 03.09.2021
Сообщений: 11
По умолчанию Не создается исполняемый файл

Доброго времени суток!

Возникла проблема, перестало компилируется в исполняемый файл, хотя ранее было все нормально.
Переустановил компилятор Mingw ничего не поменялось, проверил переменные среды тоже в порядке. Может какой то ключ в батник добавить чтобы показало где ошибка?

Win10, Mingw32, компилирую просто с батника по привычке, мне так удобней. В батнике все просто:
g++ t.cpp -o t.exe

Переносил файл в корень другого диска
Запускал от админа
Попробовал Mingw64
Попробовал ту же команду но прописать полный путь
полный путь\g++ полный путь\t.cpp -o полный путь\t.exe

Ничего не помогает!
KoTTBarsik вне форума Ответить с цитированием
Старый 05.07.2022, 11:42   #2
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Код:
g++ -o t.exe t.cpp | pause
В случае ошибки компиляции сработает команда pause и окно консоли при запуске через проводник не пропадет.

Последний раз редактировалось macomics; 05.07.2022 в 11:56.
macomics вне форума Ответить с цитированием
Старый 05.07.2022, 11:54   #3
KoTTBarsik
Пользователь
 
Регистрация: 03.09.2021
Сообщений: 11
По умолчанию

То же самое - ничего!
KoTTBarsik вне форума Ответить с цитированием
Старый 05.07.2022, 11:55   #4
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Тогда откройте консоль и запустите bat файл. Возможно у вас не запускаются bat файлы так как вы этого ожидаете.
macomics вне форума Ответить с цитированием
Старый 05.07.2022, 13:16   #5
KoTTBarsik
Пользователь
 
Регистрация: 03.09.2021
Сообщений: 11
По умолчанию

Хммм а вот это интересно!

Если просто запускаю батник то он выполняется якобы без ошибок.
Если дропом в консоль то пишет:
g++: error: t.cpp: No such file or directory
g++: fatal error: no input files
compilation terminated.
Хотя файлы есть и все в порядке вроде!
KoTTBarsik вне форума Ответить с цитированием
Старый 05.07.2022, 13:19   #6
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Тогда показывайте все по порядку. Все что написано в консоли. Не забудьте [CODE]добавить эти теги[/CODE], чтобы не было смайлов и другой подстановки от форума.
macomics вне форума Ответить с цитированием
Старый 05.07.2022, 14:46   #7
KoTTBarsik
Пользователь
 
Регистрация: 03.09.2021
Сообщений: 11
По умолчанию

Так ничего особенного:

Код:
Microsoft Windows [Version 10.0.17134.112]
(c) Корпорация Майкрософт (Microsoft Corporation), 2018. Все права защищены.

C:\Users\ADMIN-10>C:\Users\ADMIN-10\Desktop\PROGr\040Progrprop01\1\t.bat

C:\Users\ADMIN-10>g++ -o t.exe t.cpp
g++: error: t.cpp: No such file or directory
g++: fatal error: no input files
compilation terminated.

C:\Users\ADMIN-10>pause
Для продолжения нажмите любую клавишу . . .
KoTTBarsik вне форума Ответить с цитированием
Старый 05.07.2022, 14:51   #8
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Так у вас пути не совпадают. Консоль работает в папке "C:\Users\ADMIN-10", а файлы находятся в папке "C:\Users\ADMIN-10\Desktop\PROGr\040Progrprop01\1"
Добавьте в bat файл недостающие строки
Код:
@echo off
pushd "%~dp0"
g++ -o t.exe t.cpp || pause
popd

Последний раз редактировалось macomics; 05.07.2022 в 15:03.
macomics вне форума Ответить с цитированием
Старый 05.07.2022, 14:51   #9
KoTTBarsik
Пользователь
 
Регистрация: 03.09.2021
Сообщений: 11
По умолчанию

Еще попробовал не перетаскиванием, а просто консоль открыл и с полными путями прописал то же самое, результат тот же.

Код:
Microsoft Windows [Version 10.0.17134.112]
(c) Корпорация Майкрософт (Microsoft Corporation), 2018. Все права защищены.

C:\Users\ADMIN-10>E:\mingw32\bin\g++ C:\Users\ADMIN-10\Desktop\PROGr\040Progrprop01\intro.cpp -o C:\Users\ADMIN-10\Desktop\PROGr\040Progrprop01\intro.exe

C:\Users\ADMIN-10>pause
Для продолжения нажмите любую клавишу . . .

C:\Users\ADMIN-10>
Цитата:
Сообщение от macomics Посмотреть сообщение
Так у вас пути не совпадают. Консоль работает в папке "C:\Users\ADMIN-10", а файлы находятся в папке "C:\Users\ADMIN-10\Desktop\PROGr\040Progrprop01\1"
Добавьте в bat файл недостающие строки
Код:
@echo off
pushd "%~dp0"
g++ -o t.exe t.cpp | pause
popd
Ого, заработало!

Так я не понял почему раньше все работало с
Код:
g++ t.cpp -o t.exe
и любом другом компе работает, а текущем нет!

Почему перестали баты работать должным образом?

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

Последний раз редактировалось BDA; 05.07.2022 в 19:36.
KoTTBarsik вне форума Ответить с цитированием
Старый 05.07.2022, 14:57   #10
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

У вас пути не срабатывают. Попробуйте убрать из bat файла @echo off
Команды pushd/popd сохраняют и возвращают текущую директорию в правильное положение.

Я небольшую очепятку допустил. Забыл одну | в приведенном мной bat файле. Вот так правильно
Код:
@echo off
pushd "%~dp0"
g++ -o t.exe t.cpp || pause
popd

Последний раз редактировалось macomics; 05.07.2022 в 15:04.
macomics вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
исполняемый Java файл Alexmur07 Общие вопросы по Java, Java SE, Kotlin 9 17.08.2017 18:48
исполняемый файл lohmatyi Паскаль, Turbo Pascal, PascalABC.NET 18 30.09.2015 09:08
Исполняемый файл Михаил Юрьевич Общие вопросы Delphi 2 17.07.2013 01:27
исполняемый файл meevka Общие вопросы C/C++ 3 07.04.2012 16:10
mp3 в исполняемый файл JRcoker Мультимедиа в Delphi 5 01.10.2008 14:42