我有很多C++程序彼此不相關,每個程序只有一個文件。目錄結構是這樣的:如何使用find編譯所有子目錄中的所有文件?
dir1
program1.cpp
program1.h
program2.cpp
program2.h
dir2
program3.cpp
program3.h
program4.cpp
program4.h
dir3
program5.cpp
program5.h
program6.cpp
program6.h
..
我試圖想出一個shell腳本來編譯所有這些,給可執行文件不同的名稱。我一直find
像這樣嘗試此:
find . -type f -name *.cpp -exec g++ -llibname '{}' \;
這編譯所有的文件,但每個文件所以我最終只有一個最終可執行產生a.out
。我如何去除文件擴展名並將其作爲可執行文件名? (例如,用於program1.cpp
我需要g++ program1.cpp -o program1
)
的偉大工程,非常感謝.. – none 2013-03-18 10:12:36