У меня есть библиотека, написанная на C ++ (и у меня есть ее полный источник). Из-за его лицензии LGPL я могу использовать его только с проприетарным программным обеспечением моей компании через динамическую связь (статическая связь работает отлично). Итак, мне нужно встроить его в DLL. Тем не менее, библиотека довольно большая и ничего не экспортирует (следовательно, нет файла .def и нет __declspec (dllexport) статов перед именем класса и глобальными функциями). Поэтому, когда я создаю dll, это бесполезно, так как у него нет экспортированных имен, поэтому он не будет ссылаться.
В нашей компании мы используем MS Visual C ++, который по умолчанию делает
не экспортировать имена (в то время как, например, GNU GCC, при запуске через MINGW в Windows). Итак, единственная опция, которую я вижу в данный момент, - это поместить __declspec (dllexport) перед каждым именем в библиотеке, которую я использую (а их тысячи), или записать файл .def для этих имен. Но даже если я это сделаю, я не смогу использовать следующую версию библиотеки,
как мне придется делать эту работу снова. Я искал инструмент, который выполняет этот экспорт или генерирует файл .map, но никто на самом деле не выполняет эту конкретную задачу
(есть некоторые генераторы DEF, но они в основном ищут результат DUMPBIN / EXPORT, который ничего не дает в моем случае). Я искал ответы в Интернете уже два дня, но безрезультатно.
С уважением,
Андрей