Значит, подводим итоги. Для того, чтобы не открывать свои коды мы:
1) Используем LGPL динамической линковки
2) Используем отдельное приложение на любой (?) лицензии и взаимодействуем с ним как внешним приложением
3) GPL можно использовать в закрытых проектах, если связь между компонентами происходит не путём загрузки в адресное пространство процесса, а, например, запуском GPL-программы как отдельного процесса и общением с ней через пайпы.
4) Используем BSD лицензию
если не прав поправьте, спасибо!