Я работаю над библиотекой C++. В конечном счете, я хотел бы сделать его общедоступным для нескольких платформ (по крайней мере, Linux и Windows), а также некоторые примеры и привязки Python. Работа идет хорошо, но на данный момент проект довольно грязный, построенный исключительно для Visual C++, а не для нескольких платформ.Структура каталогов для библиотеки 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
...
У меня нет/мало предыдущий опыт разработки мультиплатформенной/проектов с открытым исходным кодом, и я очень удивлен, что я не могу найти любые хорошие рекомендации о том, как структурировать такой проект.
Как следует структурировать такой проект библиотеки? Что рекомендуется читать? Есть ли хорошие примеры?
Похож дубликатом http://stackoverflow.com/questions/1383174/source-file-organisation/1383188#1383188 –