Как настроить MPLABX для разработки комбинированной программы LGPL и пропаритарной?
Я разрабатываю программу для микроконтроллера. В нем есть скучные вещи, такие как передача последовательного порта, и кое-что интересное.
Я хотел бы сделать скучные вещи открытым исходным кодом под лицензией LGPL2+, а интересные вещи проприетарными. Я не юрист, но насколько я понимаю мне нужно сделать следующее:
- Дайте пользователю программы исходный код скучного материала (части LGPL2+). Это легко, я могу просто заархивировать или указать на репозиторий github.
- Дайте пользователю программы возможность перекомпилировать скучный материал. Это означает указание конечному пользователю на бесплатный компилятор, который я использовал.
- Предоставьте конечному пользователю средства повторного объединения материалов с открытым исходным кодом с предварительно скомпилированным проприетарным кодом.
Это та часть, которую я не знаю. Я предполагаю, что мне нужно сделать 2 проекта в MPLABX, один с проприетарным кодом и один с кодом LGPL2+. Затем я хотел бы сделать следующее:
- Скомпилируйте проприетарный код во что-то, что может быть предоставлено пользователю.
- Скомпилируйте код LGPL2+.
- Объедините объектный код из B и C в файл, понятный микроконтроллеру.
- Запрограммируйте микроконтроллер с помощью файла из шага C.
- Бонусные баллы, если части с открытым исходным кодом можно отлаживать, не имея исходного кода проприетарных частей.
Я использую MPLAB-X и микроконтроллер PIC18F. Я знаю, как сделать программу с одним исходным деревом, но я новичок в (динамическом) связывании и управлении несколькими проектами, которые при необходимости автоматически перекомпилируются.
Где я могу найти пример чего-то подобного?