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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
madonzy
0 / 0 / 0
Регистрация: 05.10.2013
Сообщений: 65
#1

Как рекурсивно скомпилировать проект через командную строку? - C++

30.03.2014, 01:00. Просмотров 518. Ответов 13
Метки нет (Все метки)

Как рекурсивно скомпилировать проект через командную строку?
Если у меня заголовочные файлы в папке Headers.
Но мне нужен универсальный код. Папка Headers это временное название, она может называться как угодно.
Вариант: g++ *.h *.cpp -o file.exe не подходит так как он не "залазит" во вложенные папки.
П.С: использую винду.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2014, 01:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как рекурсивно скомпилировать проект через командную строку? (C++):

Не создает exe, как запустить через командную строку с указанием имя файла - C++
#include "stdafx.h" #include <iostream> #include <fstream> #include <locale> #include <stdlib.h> using namespace std; void...

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

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

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

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

Запуск через командную строку с параметрами - C++
Помогите плиз!!! void main(int argc, char *argv) { int k,N; clrscr(); LIST *lst; FILE *fi,*fo; if (( fi = fopen(argv,"r")) ==...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
30.03.2014, 01:05 #2
вам нужна система сборки, например cmake
0
madonzy
0 / 0 / 0
Регистрация: 05.10.2013
Сообщений: 65
30.03.2014, 01:06  [ТС] #3
Расскажите по подробнее, пожалуйста.
0
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
30.03.2014, 01:09 #4
http://habrahabr.ru/post/155467/
0
gromo
370 / 269 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
30.03.2014, 01:10 #5
Цитата Сообщение от madonzy Посмотреть сообщение
Как рекурсивно скомпилировать проект через командную строку?

Не по теме:

Вы с какой эпохи "вылезли" ?


Уже наверное лет 20 как этим занимаются интегрированные среды разработки, которые вам сгенерируют специальный make-файл в котором будут правила сборки вашего проекта и все-все-все.
Бесплатные среды (IDE) для программирования на С/С++
0
madonzy
0 / 0 / 0
Регистрация: 05.10.2013
Сообщений: 65
30.03.2014, 01:12  [ТС] #6
Спасибо. А что нельзя никак с помощь stdout засунуть в g++ аргументы?
0
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
30.03.2014, 01:14 #7
Цитата Сообщение от madonzy Посмотреть сообщение
Спасибо. А что нельзя никак с помощь stdout засунуть в g++ аргументы?
можно написать скрипт для виндовой консоли который рекурсивно обойдет папки и запустит g++.
предупреждая вопрос по скрипту - обращайтесь в соответствующий раздел форума.
0
madonzy
0 / 0 / 0
Регистрация: 05.10.2013
Сообщений: 65
30.03.2014, 01:16  [ТС] #8
нужна строка для cmd и всё.
В линуксе можно так:
Код
find . -type f -iname *.cpp *.h -execdir g++ {} \;
а как в винде?
0
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
30.03.2014, 01:17 #9
Цитата Сообщение от madonzy Посмотреть сообщение
а как в винде?
Цитата Сообщение от Jupiter Посмотреть сообщение
предупреждая вопрос по скрипту - обращайтесь в соответствующий раздел форума.
...
0
DrOffset
7138 / 4279 / 964
Регистрация: 30.01.2014
Сообщений: 7,067
30.03.2014, 01:28 #10
madonzy, в винде убогая командная строка. Так элегантно и просто как в nix не получится. А как батники писать - это, действительно, в другой раздел.
1
madonzy
0 / 0 / 0
Регистрация: 05.10.2013
Сообщений: 65
30.03.2014, 01:31  [ТС] #11
DrOffset, спасибо за простой и не пафосный ответ, ценю. Но батник мне не нужен. Мне нужно прикрутить строку к редактору, а там только лишь простой слот под команду. Но все-же, спасибо!
0
DrOffset
7138 / 4279 / 964
Регистрация: 30.01.2014
Сообщений: 7,067
30.03.2014, 01:35 #12
madonzy, можно таки написать батник с циклом по нужным файлам. а в редактор вставить уже вызов самого батника в качестве одиночной команды.
0
Catstail
Модератор
22615 / 10976 / 1779
Регистрация: 12.02.2012
Сообщений: 18,113
30.03.2014, 10:45 #13
Не мог пройти мимо... При чем здесь рекурсия?
0
DrOffset
7138 / 4279 / 964
Регистрация: 30.01.2014
Сообщений: 7,067
30.03.2014, 14:54 #14
Цитата Сообщение от Catstail Посмотреть сообщение
При чем здесь рекурсия?
Он имел в виду рекурсивный обход подкаталогов.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.03.2014, 14:54
Привет! Вот еще темы с ответами:

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

Не выходит открыть текстовый файл через командную строку - C++
#include<iostream> #include<fstream> using namespace std; int main(int argc, char*argv) { fstream fout(argv); ...

Есть задача. Нужно запустить её через командную строку - C++
Люди, подскажите что нужно добавить/вписать в задачке, чтобы при открытии её в командной строке она там же и исполнялась. Если...

Компиляция программы из файла cpp через командную строку - C++
Допустим я написал этот код в стандартном виндовском блокноте #include <iostream> int main(){ std::cout << "Hello,...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
30.03.2014, 14:54
Ответ Создать тему
Опции темы

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