NetBeans在make文件中设置多个.o库输出
NetBeans setting up multiple .o library outputs in a make file?
我是新手,一般来说,制作文件和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文件来做我想要的任何想法?
这可能需要多次迭代;我得猜很多。
首先,让我们尝试构建一个对象文件。如果您的源文件之一是foo/bar.cpp
,并且它包括baz.h
和quartz/quince.h
,那么尝试以下规则:
build/Debug/library_group/bar.o : project/source/library_group/foo/bar.cpp
g++ -Iproject/source/library_group -Iproject/source/library_group/quartz -c $< -o $@
并告诉我们结果
相关文章:
- 无法在 HEVC 解码器上设置输出类型 IMFTransform
- 使用c++libgpiod库,如何将gpio行设置为输出,并使用set_value()函数操作单行
- 保证最大输出长度为双精度,并设置默认输出格式的精度
- 将 TXT 文件设置为输出和和输入
- 如何初始化可以设置为默认数组并将输入/输出作为数组的类函数?
- 在给定字符串上使用 tolower() 和 isalpha() 并将其输出设置为另一个字符串
- PDF 打印机仅在未设置输出文件名时生成 PDF
- 如何最好地为 Visual Studio 2017 构建的 CMake C++ 项目设置输出目录
- 分析我的输出文件时,如何设置IDA加载源文件
- 设置CMAKE生成的文件的输出路径
- 如何将 NanoPi 的 GPIO 设置为硬件级别的输出?
- C 设置了双重的精度(不是输出)
- 如何将2个不同的FBO设置为片段着色器输出
- VS2012 如何将 C# 的 AnyCPU 配置的输出目录设置为各自解决方案配置的 x86 和 x64 文件夹?
- 如何在GDAL输出文件中设置分类颜色
- 如何在Visual Studio中设置输出控制台宽度
- 这些是将 printf 的输出设置为字符串的一种方法吗?
- 如何将输出设置为中间
- XercesC将输出设置为UTF-8
- 如何为标准输出设置控制台光标位置