Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.60/513: Рейтинг темы: голосов - 513, средняя оценка - 4.60
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
1

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

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

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

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

Как мне его скомпилировать через командную строку, или подскажите мне код ( .bat )
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.10.2012, 09:01
Ответы с готовыми решениями:

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

Как открыть программу написанную на c++ через командную строку, если в пути программы есть пробелы
путь программы C:\la la\ve.exe пишу в командной строке: start C:\la la\ve.exe и выдает такое...

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

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

79
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
12.10.2012, 18:53 61
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от хАЛЕКСЕЙх Посмотреть сообщение
если я введу
Bash
1
C:\Users\Алексей>g++ C:\Users\Алексей\main.cpp -o C:\Users\Алексей\main.exe
это правильно?
Если пудь до g++ прописан, то да.

Добавлено через 2 минуты
если Вы попытаетесь скомпилировать код, который написали ранее:
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main(){
    std::cout << "Hello, world!";
 
system("pause");
return 0;
}
То будет ошибка. Для функции system необходимо подключить windows.h
1
soon
12.10.2012, 18:55
  #62

Не по теме:

Цитата Сообщение от Croessmah Посмотреть сообщение
То будет ошибка. Для функции system необходимо подключить windows.h
cstdlib

1
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
12.10.2012, 19:01  [ТС] 63
У меня получилось!!! Всем спасибо, всем поставлю like

И наконец долгожданная картинка
Компиляция программы из файла cpp через командную строку
0
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
12.10.2012, 19:03 64
Цитата Сообщение от soon Посмотреть сообщение

Не по теме:


cstdlib

тьфу...точно =)
0
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
12.10.2012, 19:07  [ТС] 65
Цитата Сообщение от Croessmah Посмотреть сообщение
Не по теме:
cstdlib
у меня и с <windows.h> прокатило
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
12.10.2012, 19:10 66
хАЛЕКСЕЙх, это потому, что где-то ещё подключается cstdlib (скорее всего, в iostream). Т.е. у вас бы и без windows.h прокатило. А так стандарт не гарантирует, какие заголовочные файлы в каких подключаются, так что правильнее всего напрямую подключать файл, в котором используется что-либо, что он предоставляет.
0
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
12.10.2012, 19:14 67
Цитата Сообщение от silent_1991 Посмотреть сообщение
хАЛЕКСЕЙх, это потому, что где-то ещё подключается cstdlib (скорее всего, в iostream). Т.е. у вас бы и без windows.h прокатило. А так стандарт не гарантирует, какие заголовочные файлы в каких подключаются, так что правильнее всего напрямую подключать файл, в котором используется что-либо, что он предоставляет.
Подключен только iostream:
Компиляция программы из файла cpp через командную строку
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
12.10.2012, 19:15 68
Croessmah, ну, возможно, stdlib.h подключается в windows.h.
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
12.10.2012, 19:40 69
Цитата Сообщение от Croessmah Посмотреть сообщение
system("pause");
Какой смысл, если запускать из под консоли? А консольные приложения все необходимо запускать из консоли.
Цитата Сообщение от silent_1991 Посмотреть сообщение
ну, возможно, stdlib.h подключается в windows.h.
Так оно и есть.

Добавлено через 4 минуты
Цитата Сообщение от silent_1991 Посмотреть сообщение
хАЛЕКСЕЙх, это потому, что где-то ещё подключается cstdlib (скорее всего, в iostream).
И это тоже, но тогда
C++
1
std::system


Добавлено через 6 минут
Цитата Сообщение от Croessmah Посмотреть сообщение
Подключен только iostream:
Ну а у меня нечто подобное
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
‘‚@ANDREY-PC /c/MinGW
$ g++ abc.cpp -o abc
 
‘‚@ANDREY-PC /c/MinGW
$ abc
 
‘‚@ANDREY-PC /c/MinGW
$ cat abc.cpp
#include <iostream>
 
int main ()
{       
        system("");
        return 0;
}               
‘‚@ANDREY-PC /c/MinGW
$
0
545 / 344 / 12
Регистрация: 05.11.2010
Сообщений: 1,076
Записей в блоге: 1
12.10.2012, 21:29 70
Ну вы тут устроили гадание, я же в своем посте четко одним из пунктов написал - создать переменную MINGW_HOME.
c:\MinGw\include;c:\MinGw\lib
Интересно, какое назначение, по-твоему, имеют данные пути, включенные в path.
0
9 / 9 / 3
Регистрация: 11.10.2012
Сообщений: 118
13.10.2012, 05:41  [ТС] 71
Цитата Сообщение от go Посмотреть сообщение
‘‚@ANDREY-PC /c/MinGW
$ g++ abc.cpp -o abc
‘‚@ANDREY-PC /c/MinGW
$ abc
‘‚@ANDREY-PC /c/MinGW
$ cat abc.cpp
#include <iostream>
int main ()
{
system("");
return 0;
}
‘‚@ANDREY-PC /c/MinGW
$
Это куда прописывать надо в main.cpp, или в командную строку???
Цитата Сообщение от Герц Посмотреть сообщение
Ну вы тут устроили гадание, я же в своем посте четко одним из пунктов написал - создать переменную MINGW_HOME.
c:\MinGw\include;c:\MinGw\lib
Интересно, какое назначение, по-твоему, имеют данные пути, включенные в path.
Герц, у меня в WINGW_HOME прописано вот так
Bash
1
C:\MinGW
в Path прописано вот так
Bash
1
c:\MinGW\bin;
Добавлено через 46 секунд
Я что-то опять не то сделал???
0
Nameless One
13.10.2012, 06:31
  #72

Не по теме:

На линуксе все проще, пути устанавливать не надо, компилятор скорее всего уже в системе есть:

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
User@intel ~/temp
$ cat > main.cpp
#include <iostream>
int main() { std::cout << "Hello, World!" << std::endl; }
 
User@intel ~/temp
$ make main
g++     main.cpp   -o main
 
User@intel ~/temp
$ ./main
Hello, World!
 
User@intel ~/temp
$
То же самое можно выполнить и под виндой в MSYS Shell, единственное, что MinGW'ный bin в PATH все-таки придется добавить руками

0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
13.10.2012, 07:38 73
Цитата Сообщение от хАЛЕКСЕЙх Посмотреть сообщение
Я что-то опять не то сделал???
Программа компилируется? Если да, то всё то. Если у вас файл main.cpp находится в папке С:\Users\Алексей, то необязательно пути для файлов прописывать. Достаточно в командной строке набрать: g++ main.cpp Исполняемый файл будет создан в этой же папке. Для начала этого вполне достаточно. Сосредоточьтесь лучше не программировании. А если захотите побольше узнать о компиляторе, скачайте эту книгу и почитайте: "GCC._Полное_руководство_(Гриффитс)(2004)"
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
13.10.2012, 15:41 74
Цитата Сообщение от хАЛЕКСЕЙх Посмотреть сообщение
Это куда прописывать надо в main.cpp, или в командную строку???
Попробуй
Bash
1
2
3
4
5
6
7
‘‚@ANDREY-PC ~
$ c++
c++.exe: fatal error: no input files
compilation terminated.
 
‘‚@ANDREY-PC ~
$
Если компилятор есть и пути указаны верно, то будет что-то вроде этого.
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
13.10.2012, 18:17 75
У ТС всё компилируется - 63 пост.
0
0 / 0 / 0
Регистрация: 15.09.2015
Сообщений: 1
15.09.2015, 15:35 76
1) запускаешь Visual Studia Comand Promt от администратора
2)сначала указываешь путь к файлу, где он хранится и переходишь в этот каталог
cd <путь к файлу> (без фигурных скобок)
3)Далее пишешь cl -GX "Имя файла.cpp" (кавычки можно не ставить, если файл в имени без пробела. cl - это команда компиляция. -GX параметр для повышения качества компиляции)
У тебя создастся exe и obj файлы.
4) Чтобы теперь запустить программу достаточно ввести имя файла без расширения "Имя файла"
5) наслаждаться
Источник: https://msdn.microsoft.com/ru-... 84838.aspx
0
0 / 0 / 0
Регистрация: 01.08.2015
Сообщений: 9
30.11.2015, 22:24 77
Народ . Прочитал я эту тему , вроде всё норм получается , но вопросы остались . Как заставить компилятор видеть что моя прога находится на рабочем столе ? Ну типо открыл консоль в любой папке , написал g++ qwerty.cpp , и компилятор тебе всё скомпилил . Сейчас у меня вот так выходит как на скрине . Я думал достаточно добавить в переменную path адрес рабочего стола , но не вышло .
Миниатюры
Компиляция программы из файла cpp через командную строку  
0
0 / 0 / 0
Регистрация: 13.02.2016
Сообщений: 4
22.07.2017, 23:39 78
Ну почему никто не помог!? Мне нужен код!
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
23.07.2017, 00:07 79
Цитата Сообщение от NotMyNickname Посмотреть сообщение
Я думал достаточно добавить в переменную path адрес рабочего стола , но не вышло
В path ищется путь к исполняемому файлу.
Код
cd \Users\NotMyNickname\Desktop
g++ qwerty.cpp
0
Эксперт С++
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
23.07.2017, 00:23 80
Цитата Сообщение от ЮрийМ Посмотреть сообщение
Ну почему никто не помог!? Мне нужен код!
особенное внимание обратите на 3й пункт сверху.
Миниатюры
Компиляция программы из файла cpp через командную строку  
1
23.07.2017, 00:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.07.2017, 00:23
Помогаю со студенческими работами здесь

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
80
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru