Basile отлично, вам нужно построить оборудование , чтобы иметь программное обеспечение, с которым вы можете легко работать.Вы действительно хотите иметь возможность просто запустить make
или что-то подобное и получить ваш проект, быстро воссозданный повторяемым образом.Вы также хотите убедиться, что весь ваш проект обновлен, восстанавливая все, что зависит от того, что изменилось.В то время как вы могли бы просто держать сценарий оболочки, содержащий g++
строк, как в ответе ruakh , это излишне перекомпилирует больше, чем вам нужно.(Это не имеет большого значения для небольших проектов, но становится важным, когда проекты растут больше, чем тривиальные.)
Я потратил всего пятнадцать минут, чтобы просмотреть документацию OMake, но это выглядит очень многообещающе.make
является стандартным для систем и предоставляет огромный набор предопределенных правил сборки, включая правила для C ++, поэтому не составляет труда написать новые Makefile
s для проектов.
Это будетВыглядит примерно так:
# the compiler and its flags
CXX = g++
CXXFLAGS = -Wall
PROGRAM = foo
OBJECTS = foo_a.o foo_b.o foo_c.o foo_d.o
.PHONY: all
.DEFAULT: all
all: $(PROGRAM)
$(PROGRAM): $(OBJECTS)
Объекты foo_a.o
будут построены из соответствующего исходного файла с именем foo_a.c
, foo_a.cc
, foo_a.C
, foo_a.cpp
, foo_a.p
, foo_a.f
, foo_a.F
и т. Д. Для C, C ++, Fortran, Pascal, Lex, Yacc и т. Д.
O'Reilly make
book , к сожалению, довольно устарелс этой точки зрения;.SUFFIX
правила были заменены шаблонными правилами , но в книге О'Рейли нет описания шаблонных правил.Тем не менее, это хорошая отправная точка, если вам не подходит полная документация GNU Make .