我正在使用C ++库。最终,我想将其与一些示例和Python绑定一起公开提供给多个平台(至少是Linux和Windows)。工作进展顺利,但目前该项目非常混乱,仅针对Visual C ++内置且仅针对Visual C ++构建,而根本没有多平台。
因此,我觉得清理工作井井有条。我要改进的第一件事是项目的目录结构。我想创建一个适用于Automake工具的结构,以允许在多个平台上轻松编译,但是我以前从未使用过它们。由于我仍将在Visual Studio中进行(大部分)编码,因此,我需要在某个地方保留Visual Studio项目和解决方案文件。
我试图用谷歌搜索“ C ++库目录结构”之类的术语,但似乎没什么有用的。我找到了一些非常基本的准则,但没有明确的解决方案。
在查看一些开源库时,我想到了以下内容:
\mylib
\mylib <source files, read somewhere to avoid 'src' directory>
\include? or just mix .cpp and .h
\bin <compiled examples, where to put the sources?>
\python <Python bindings stuff>
\lib <compiled library>
\projects <VC++ project files, .sln goes in project root?>
\include?
README
AUTHORS
...
我以前在多平台开发/开源项目上没有/只有很少的经验,并且很惊讶我找不到关于如何构建这样的项目的任何良好指导。
通常应该如何构造这样的图书馆项目?建议阅读什么?有一些很好的例子吗?