2013-09-28 9 views
8

Mam strukturę projektu tak:Linux: Tworzenie automatycznie C++ makefile z podanych plików źródłowych

src/main.cpp 
src/Folder/this.cpp 
src/Folder/that.cpp 
src/NewFolder/foo.cp 
// etc. 

Ponadto muszę jakieś libs tak, że można połączyć, np lboost_system. Jak mogę po prostu utworzyć plik Makefile z tymi danymi? Cały czas czytałem o ręcznym tworzeniu makefile, CMake i tak dalej, ale jest to moim zdaniem skomplikowane! nie ma żadnego narzędzia, w którym można określić następujące informacje:

Source folder: /home/bla/src/ 
Additional Libs: lboost_system 
Compiler Flags: -std=c++0x (or whatever) 

I makefile jest generowany ?! Czy to naprawdę takie trudne?

+0

To praktycznie wszystko, co jest do pliku cmake. A robienie tego ze zwykłą starą marką nie jest dużo trudniejsze. – Flexo

+0

również możesz użyć jakiegoś IDE, zrobi to za ciebie – 4pie0

+0

Właściwie używałem Netbeans do generowania plików Makefile. Ale najpierw jest to "przerobione" na generowanie pliku makefile, a po drugie na komputer z bardzo małą mocą przetwarzania. Instalowanie Eclipse lub Netbeans jest okropne – Anonymous

Odpowiedz

5

Możesz napisać Makefile w sposób ogólny - to znaczy, że nie będziesz musiał podawać każdego pliku źródłowego jeden po drugim. Spójrz na http://www.puxan.com/Computers/Howto-write-generic-Makefiles, zrobiłem to dość dawno temu, więc nie pamiętam szczegółów, ale na końcu dodawanie plików * .cpp nie wymaga (zwykle) zmiany Makefile.

Możesz również rzucić okiem na automake (http://www.gnu.org/software/automake/manual/automake.html), który jest o krok przed cudownym cmake'em. Standaryzuje cele i wygląda na to, aby ułatwić sobie życie, jeśli chcesz rozpowszechniać swoje oprogramowanie jako pliki źródłowe.

Powiązane problemy