一般来说,我是制作文件和 Linux 编程的新手,并且在设置 Netbeans 项目/制作文件来做我想做的事情时遇到了一些麻烦。我的项目由一堆库组成,这些库被分成几组,然后一起归档。
进一步说明,基本上每个 .cpp 文件都是一个单独的库,需要编译成 .o 文件,然后每个组中的所有 .o 文件都需要归档到 .a 文件中。在命令行上,我会按照以下方式做一些事情:
for i in *.cpp; do g++ -I./ -c $i -o $i.o ; done
然后:
ar -r "libWhatever.a" *.o
我需要帮助的是设置 make 文件以将库 .o 文件输出到正确的组文件夹中,并摆脱它正在制作的所有额外文件夹。我还希望它能够自动将库组归档在一起。
我的项目是这样设置的:
project -> source - > library_group -> cpp files + sub-folders containing cpp files that are part of the library group.
project -> header -> library_group -> h files + sub-folders containing h files that are part of the library group.
然后,在 NetBeans 中,我在“源文件”+“头文件”属性下设置“包含目录”以包含所有必要的文件和文件夹。
该项目现在可以顺利编译,但输出如下:
build -> Debug -> GNU-Linux-x86 -> Project -> library_group -> libraries + sub-folders containing more libraries.
我想要的是输出看起来像这样:
build -> Debug -> library_group (this folder should contain all .o files associated with the library group)
关于如何配置make文件来做我想做的任何想法?