我已经成为共享库项目的维护者。该库分为几个模块,每个模块都编译为静态库,然后链接在一起。使用Eclipse作为IDE,代码存放在SVN服务器。到目前为止,构建过程是手动处理的——构建库,将所有 .a 和 .h 移动到共享文件夹,然后构建共享库。需要针对 linux、ARM 和 windows 编译代码。
问题是我需要更多地拆分当前模块,以便更好地测试(多个测试和示例简单程序,只有一个带有 main
的 .cpp 文件)和模块间代码共享(模块A和B都使用C,但我不想连接A和B)。这会导致更复杂的依赖树,这将很难手动处理。我还需要能够构建一个项目的更多配置,可能链接到不同版本的依赖项目。
您将如何组织代码并设置开发环境?
编辑:我需要从 DE 获得的具体信息:
- 带有 GUI 的 IDE(我喜欢 vim 和 shell,但其他的不喜欢)
- 单独的项目,每个项目都创建静态库、要包含的一组 header 和示例程序
- 每个项目的不同配置,链接/包含不同版本和/或依赖项的配置
- 代码完成和 SVN 支持
最佳答案
make
和 Makefile 是此类构建和链接作业的既定且经过深思熟虑的方法,尤其是与 automake
结合使用时和 libtool
.这些工具与 SVN 完美集成,可能还与 Eclipse 集成。
关于C++项目组织,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7222657/