c++ - 如何编译以目录结构组织的 C++ 文件?

标签 c++ compilation code-organization

我现在已经编写了一堆代码,并以类似于此大纲的方式对其进行了排序:

project/
+ include/
| + bar/
| |   bar.hpp
|   foo.hpp
+ src/
| + bar/
| |   bar.cpp
|   foo.cpp
|   main.cpp

我的问题是,现在如何调用 g++,以便它将所有内容很好地链接在一起?

我已经发现我需要使用指向 include/目录的 -I 选项来调用它。我猜想从项目/文件夹中调用 g++ 是最有意义的。另外,我正在考虑编写一个 Makefile 来自动化此过程,但我必须承认我还没有对此进行太多研究。

最佳答案

我建议使用某种构建工具,例如 CMakeAutotools 。创建自己的 Makefile 可能是一种正确的 PITA。

如果您有一个包含一些要快速编译的 C++ 文件的小目录结构,您可以执行以下操作:

find src/ -name "*.cpp" | xargs g++ -I include/

关于c++ - 如何编译以目录结构组织的 C++ 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4768125/

相关文章:

c++ - C++ 中的 SIGPIPE 确定哪个 TCP 套接字已断开连接

c++ - 将 VS 2010 C++ 项目转换为 VS 2008

ruby-on-rails - 如何在 RSpec 中包含多个模块?

naming-conventions - 关于 View 模型的命名约定以避免长名称

c++ - 关于C++编程实践的看法

c++ - 如何在类 debian 系统中使用 libapt(或 libept)来列出包并获取它们的信息?

c++ - 如何覆盖运算符<<?

c++ - PhysX.sln 无法编译(PhysX 3.4)

java - 出现编译错误: warning: [unchecked] unchecked call to add(E) as a member of the raw type ArrayList

java - 使用 javax.tools.JavaCompiler 编译循环依赖类