Структура каталогов для библиотеки C ++

Я работаю над библиотекой C ++. В конечном итоге я хотел бы сделать его общедоступным для нескольких платформ (по крайней мере, для Linux и Windows) вместе с некоторыми примерами ипитон привязок. Работа продвигается хорошо, но на данный момент проект довольно грязный, построен исключительно дляVisual C ++ а не мультиплатформенность вообще.

Поэтому я чувствую, что уборка в порядке. Первое, что я хотел бы улучшить, - это структура каталогов проекта. Я хотел бы создать структуру, которая подходит дляAutomake инструменты, позволяющие легко компилировать на нескольких платформах, но я никогда не использовал их раньше. Так как я все еще буду заниматься (большей частью) кодированием в Visual Studio, мне нужно где-то хранить свои файлы проекта и решения Visual Studio, а также.

Я пытался найти в Google такие термины, как "структура каталогов библиотеки 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
    ...

У меня нет / мало предыдущего опыта работы с мультиплатформенными проектами разработки / разработки с открытым исходным кодом, и я очень удивлен, что не могу найти хороших рекомендаций о том, как структурировать такой проект.

Как вообще следует структурировать такой библиотечный проект? Что можно рекомендовать к прочтению? Есть ли хорошие примеры?

Ответы на вопрос(5)

Ваш ответ на вопрос