Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Данное свойство автоматически создает module definition (.def) со всеми глобальными символами из .obj файла для динамической библиотеки на ОС Windows.
generate_export_header(mylib)#include "mylib_export.h"
class MYLIB_EXPORT MyClass
{
};set_target_properties(таргет1 таргет2 PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON)И вероятность появления ошибки во время неправильного написания блока условной компиляции и определения макроса среди разработчиков сведена к нулюПросто надо использовать cmake-функцию generate_export_header, тогда человеческий фактор исключается.
Не знаю, что такое случилось с тегом source, но код нормально не вставляется
#include "MyLibExport.h"
class MyLib_EXPORT MyClass
{
};
MyLib_HIDDEN void MyHiddenFunction();
CMake — создание динамических библиотек