Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 167, средняя оценка - 4.96
хАЛЕКСЕЙх
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
#1

Компиляция программы из файла cpp через командную строку - C++

12.10.2012, 09:01. Просмотров 30970. Ответов 79
Метки нет (Все метки)

Допустим я написал этот код в стандартном виндовском блокноте

C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main(){
    std::cout << "Hello, world!";
 
system("pause");
return 0;
}
и назвал я его "main.cpp"

Как мне его скомпилировать через командную строку, или подскажите мне код ( .bat )
http://www.cyberforum.ru/cpp-beginners/thread1512158.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2012, 09:01
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Компиляция программы из файла cpp через командную строку (C++):

Не создает exe, как запустить через командную строку с указанием имя файла
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;locale&gt;...

Вывод текста описания команд в консоль командной строки при запуске программы через командную строку
Всем привет! Есть такая программка которая запускается через командную строку с...

Как в windows сделать динамическую библиотеку из файлов .cpp через командную строку ?
Здраствуйте, вопрос состоит в следующем, как у Виндовс через командную ...

Компиляция .cpp-файлов из программы
Доброго времени суток! Имеется VS 2013 и .cpp файлы. Задача - написать свою...

Компиляция файла cpp
Ситуация: среды visual studio нет и не будет. Имеется файл с расширением cpp....

79
Герц
524 / 341 / 12
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
12.10.2012, 14:09 #21
1. Для начала скачай установщик MinGW отсюда http://sourceforge.net/projects/ming...d?source=files,
2. Установи его в любую папку (например C:\MinGW, путь этот запомни, еще понадобится),
3. Картинка: http://store.waredom.ru/blog/29_1.jpg . Открой свойства компьютера (WINDOWS+BREAK либо правая кнопка мыши на "Моем компьютере" и свойства в контекстном меню), зайди на закладку показанную на рисунке и добавь новую переменную окружения MINGW_HOME со значением папки, куда ты установил MinGW( например C:\MinGW, или что ты сам указывал). Далее найди в нижнем списке переменную Path и отредактируй ее, добавив в конец следующее:
;%MINGW_HOME%\bin
,
4. Далее открой cmd.exe и попробуй набрать g++ -v.
0
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
12.10.2012, 14:13 #22
Зайдите в папку с Code::Bloks, папка bin, и посмотрите, есть ли там файл g++.exe. Если есть. Панель управления - Система -Дополнительные параметры системы - Переменные среды - Системные переменные - Path. Изменить. После точки с запятой прописываете путь к папке bin (C:\....\bin ). ОК, ОК. Перезагрузка. Повторяете действия с командной строкой.

Добавлено через 1 минуту
Герц, у него две среды с mingv стоят.
0
Kastaneda
Jesus loves me
Эксперт С++
4759 / 2962 / 340
Регистрация: 12.12.2009
Сообщений: 7,520
Записей в блоге: 2
Завершенные тесты: 1
12.10.2012, 14:17 #23
я иногда через set (аналог юниксовой export) PATH меняю, правда это работает только в текущей сессии.
1
Герц
524 / 341 / 12
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
12.10.2012, 14:23 #24
Герц, у него две среды с mingv стоят.
MinGW. Зачем привязываться к встроенный в IDE версиям компилятора (к тому же обрезанным относительного полного комплекта MinGW), если можно поставить компилятор отдельно и пользоваться им?
я иногда через set (аналог юниксовой export) PATH меняю, правда это работает только в текущей сессии.
Для этого и set не нужен, просто пишешь:
PATH=%PATH%;C:\bin
и все работает. Собственно, в шелле так же можно.
1
хАЛЕКСЕЙх
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
12.10.2012, 14:31  [ТС] #25
Цитата Сообщение от Герц Посмотреть сообщение
1. Для начала скачай установщик MinGW отсюда http://sourceforge.net/projects/ming...d?source=files,
долго устанавливаться будет?
0
Kastaneda
12.10.2012, 14:37
  #26

Не по теме:

Цитата Сообщение от Герц Посмотреть сообщение
Для этого и set не нужен, просто пишешь:
Возможно, я виндовую консоль плохо знаю.

1
Герц
524 / 341 / 12
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
12.10.2012, 15:25 #27
долго устанавливаться будет?
Он скачивает пакеты из интернета, у меня минут 10 уходило.
0
хАЛЕКСЕЙх
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
12.10.2012, 18:03  [ТС] #28
Цитата Сообщение от Герц Посмотреть сообщение
1. Для начала скачай установщик MinGW отсюда http://sourceforge.net/projects/ming...d?source=files,
2. Установи его в любую папку (например C:\MinGW, путь этот запомни, еще понадобится),
3. Картинка: http://store.waredom.ru/blog/29_1.jpg . Открой свойства компьютера (WINDOWS+BREAK либо правая кнопка мыши на "Моем компьютере" и свойства в контекстном меню), зайди на закладку показанную на рисунке и добавь новую переменную окружения MINGW_HOME со значением папки, куда ты установил MinGW( например C:\MinGW, или что ты сам указывал). Далее найди в нижнем списке переменную Path и отредактируй ее, добавив в конец следующее:
;%MINGW_HOME%\bin
,
4. Далее открой cmd.exe и попробуй набрать g++ -v.

Зделал всё так как ты мне написал

1 .Устанавил MinGW, в папку C:\MinGW
2. Открыл свойства компьютера, смотри картинки
Компиляция программы из файла cpp через командную строкуКомпиляция программы из файла cpp через командную строкуКомпиляция программы из файла cpp через командную строкуКомпиляция программы из файла cpp через командную строку
3. Открыл cmd.exe и попробывал набрать ( g++ main.cpp -v , g++ main.cpp, g++ "main.cpp" -v, и тд )
4. Как видешь по картинкам сделал всё как ты мне сказал и поначалу что-то компилировалось а потом перестало и стало по старинке мне выдавать, смотри картинку
Компиляция программы из файла cpp через командную строку

Что я сделал не так?
0
Kastaneda
Jesus loves me
Эксперт С++
4759 / 2962 / 340
Регистрация: 12.12.2009
Сообщений: 7,520
Записей в блоге: 2
Завершенные тесты: 1
12.10.2012, 18:08 #29
А ты уверен, что MINGW_HOME существует? Под линуком это можно проверить так
Bash
1
echo $MINGW_HOME
под виндой не помню как, но думаю есть смысл попробовать написать в PATH полный путь, без переменных.
0
silent_1991
Эксперт С++
5007 / 3065 / 270
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
12.10.2012, 18:10 #30
Цитата Сообщение от Kastaneda Посмотреть сообщение
А ты уверен, что MINGW_HOME существует?
Если не ошибаюсь, по умолчанию он не устанавливается инсталлятором (хотя я давно им в последний раз пользовался, качаю niXman'овские сборки, их просто разархивировать надо). Я всегда прописываю полный путь.
0
хАЛЕКСЕЙх
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
12.10.2012, 18:11  [ТС] #31
Цитата Сообщение от Kastaneda Посмотреть сообщение
А ты уверен, что MINGW_HOME существует?
Да я уверен, потомучто я его сам создал.

Цитата Сообщение от Kastaneda Посмотреть сообщение
Под линуком это можно проверить так
Какой линукс используешь, я сам хочу туда вскором времени перейти
0
silent_1991
Эксперт С++
5007 / 3065 / 270
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
12.10.2012, 18:11 #32
А переменную под вндой проверить можно так:
Bash
1
echo %MINGW_HOME%
0
Kastaneda
Jesus loves me
Эксперт С++
4759 / 2962 / 340
Регистрация: 12.12.2009
Сообщений: 7,520
Записей в блоге: 2
Завершенные тесты: 1
12.10.2012, 18:13 #33
Или попробуй пока не трогать переменные среды, выполни в консоли
Код
PATH=%PATH%;\path\to\bin
\path\to\bin - естественно твой путь до папки bin, там где g++ лежит. После этого еще раз попробуй скомпилировать. Должно получиться.

Добавлено через 1 минуту
Цитата Сообщение от хАЛЕКСЕЙх Посмотреть сообщение
Да я уверен, потомучто я его сам создал.
Как? Возможно твоя переменная существует только в текущей сессии консоли.
0
хАЛЕКСЕЙх
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
12.10.2012, 18:14  [ТС] #34
Цитата Сообщение от Kastaneda Посмотреть сообщение
но думаю есть смысл попробовать написать в PATH полный путь, без переменных.
прописал вот так (C:\MinGW\%MINGW_HOME%\bin) неполучается
0
Kastaneda
12.10.2012, 18:14
  #35

Не по теме:

Цитата Сообщение от хАЛЕКСЕЙх Посмотреть сообщение
Какой линукс используешь, я сам хочу туда вскором времени перейти
вопрос не по теме, но Archlinux.

0
хАЛЕКСЕЙх
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
12.10.2012, 18:15  [ТС] #36
Цитата Сообщение от silent_1991 Посмотреть сообщение
А переменную под вндой проверить можно так:Код Bash
1 echo %MINGW_HOME%
куда это вписывать нужно???
0
Kastaneda
Jesus loves me
Эксперт С++
4759 / 2962 / 340
Регистрация: 12.12.2009
Сообщений: 7,520
Записей в блоге: 2
Завершенные тесты: 1
12.10.2012, 18:15 #37
Цитата Сообщение от хАЛЕКСЕЙх Посмотреть сообщение
прописал вот так (C:\MinGW\%MINGW_HOME%\bin) неполучается
нужно без %MINGW_HOME%, просто полный путь.
0
silent_1991
Эксперт С++
5007 / 3065 / 270
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
12.10.2012, 18:16 #38
хАЛЕКСЕЙх, так у вас %MINGW_HOME% и так имеет значение "C:\MinGW". Вам надо писать просто %MINGW_HOME%\bin
0
хАЛЕКСЕЙх
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
12.10.2012, 18:16  [ТС] #39
Цитата Сообщение от Kastaneda Посмотреть сообщение
Как? Возможно твоя переменная существует только в текущей сессии консоли.
я не знаю как, у меня было там кнопочка ( создать ) я создал MINGW_HOME, и прописал в неё C:\MinGW
0
Kastaneda
Jesus loves me
Эксперт С++
4759 / 2962 / 340
Регистрация: 12.12.2009
Сообщений: 7,520
Записей в блоге: 2
Завершенные тесты: 1
12.10.2012, 18:16 #40
Цитата Сообщение от хАЛЕКСЕЙх Посмотреть сообщение
куда это вписывать нужно???
это нужно выполнить в консоли, при чем лучше в новой, чтобы убедиться, что %MINGW_HOME% реально существует.
0
12.10.2012, 18:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2012, 18:16
Привет! Вот еще темы с решениями:

Передача символов через командную строку
Доброго времени суток! Прошу помочь мне с решением данной задачи: Через...

Запуск Gnu через командную строку
Здравствуйте, у меня возникла проблема такая интересная (лично для меня :D),...

Закрытие программ через командную строку
помогите, вирус поймал, блочит гугл, в диспетчер захожу, при наведении на...

Запуск через командную строку с параметрами
Помогите плиз!!! void main(int argc, char *argv) { int k,N; clrscr(); LIST...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru