最佳答案
我正在开发一个 C + + 库。最后,我希望将它公开地提供给多个平台(至少是 Linux 和 Windows) ,以及一些示例和 巨蟒绑定。工作进展顺利,但目前该项目是相当混乱的,建立在单独的和为 Visual C + + ,而不是多平台在所有。
所以,我觉得应该清理一下。我想改进的第一件事是项目的目录结构。我想创建一个适合于 汽车制造工具的结构,以便在多个平台上轻松编译,但我以前从未使用过这些工具。由于我仍将在 VisualStudio 中进行(大部分)编码,因此我还需要一个地方来保存 VisualStudio 项目和解决方案文件。
我试图在谷歌上搜索“ 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
...
我以前没有/几乎没有多平台开发/开源项目的经验,我很惊讶,我找不到任何关于如何构建这样一个项目的好的指导方针。
一个人一般应该如何构建这样一个图书馆项目? 可以推荐阅读什么? 是否有一些好的例子?