G++添加包含和链接路径

G++ Add include and linking path

本文关键字:链接 路径 包含 添加 G++      更新时间:2023-10-16

我的问题

我在某个地方读到,要将include路径添加到g++,您需要使用-I选项:

g++ -I /some/directory and_then_my_files.cpp

然而,我不确定这是否真的是我所需要的。它目前对我不起作用,我找不到任何其他接近我现有的东西。

我的设置

我有一个包含所有当前项目代码的目录,其中有一个子目录classes,其中包含各种.h.cpp文件,这些文件包含编译主文件时可能使用或不使用的类。

由于g++ ./classes/*.cpp main.cpp需要很长时间(classes目录中有大量文件),我正在寻找一种只编译和链接主文件中包含的文件的替代方案。

主文件:

#include "classes/a.h"
#include "classes/b.h"
// ... my code

正如您所能想象的,g++抱怨对类A和B的未定义引用,除非我将./classes/*.cpp添加到构建命令中。

我想要实现的目标

所以-I-L不起作用,将整个目录添加到build命令中会导致构建时间长得离谱——我说的是3-5分钟,这确实降低了我的开发速度。

有没有什么方法可以只构建/链接classes目录中包含的类,比如我上面给出的例子中的只构建类A和B?

我已经尝试过的小回顾

g++ -I ./classes main.cpp -o main

g++ -L ./classes main.cpp -o main(可能很愚蠢,但我还是试过了)

g++ ./classes/*.cpp main.cpp -o main(我目前不得不求助的)


提前感谢:)

的临时解决方案

export CPLUS_INCLUDE_PATH=/usr/local/include