Думаю правильней и надежней собрать динамически линкуемую библиотеку на C++ и при сборке nginx указать CORE_LIBS="$CORE_LIBS -l<моя_библиотека>", не забывайте про name mangling и используйте extern "C". Создайте модуль на С и используйте его как фасад к
библиотеке на C++.
Спасибо за ответ. Вероятно, это был бы лучший выход, но дело в том, что библиотека на C++ с которой нужно линковаться уже написана (она используется в том числе и для апачевского модуля), а экспортируемые функции принимают как аргумент std::map<string, string>
Вся эта возня для того, чтобы библиотека могла работать с правильными данными.
Можно, конечно, передавать в либу сишную структуру, там ее конвертировать в map, но это слишком накладкно, по-моему :(