Приобрести книгу можно на сайте ozon.ru и в электронном виде на Google Play:
2 thoughts on “Глава 42 – Динамические библиотеки и система расширений”
Здравствуйте, Макс!
В примере с созданием динамической библиотеки у меня не находится функция из этой библиотеки (oddUpper). Т.е. я сначала создаю динамическую библиотеку листинги 42.1 – 42.3 (в моей ОС создается файл libdynlib.so (а также файлы libdynlib.so.1,libdynlib.so.1.0, libdynlib.so.1.0.0) , эти файлы находятся на один уровень выше каталога с созданным далее приложением MyApplication). В приложении я изменил строку:
QLibrary lib(“dynlib”);
на
QLibrary lib(“libdynlib”);
в соответствии со сформированным файлом динамической библиотеки. Но при компиляции и запуске основного приложения (листинг 42.4) в элементе QLabel отображается исходный текст с маленькими буквами…
При отладке кода приложения (листинг 42.4) после выполнения строки кода:
Fct fct = (Fct)(lib.resolve(oddUpper));
указатель на функцию fct становится равным 0…
Здравствуйте, Вячеслав!
Как я понял, Вы компилируете под Linux. Попробуйте в QtCreator не pro-файлы отдельных проектов Application.pro и DLL.pro, а файл DynLib.pro
Здравствуйте, Макс!
В примере с созданием динамической библиотеки у меня не находится функция из этой библиотеки (oddUpper). Т.е. я сначала создаю динамическую библиотеку листинги 42.1 – 42.3 (в моей ОС создается файл libdynlib.so (а также файлы libdynlib.so.1,libdynlib.so.1.0, libdynlib.so.1.0.0) , эти файлы находятся на один уровень выше каталога с созданным далее приложением MyApplication). В приложении я изменил строку:
QLibrary lib(“dynlib”);
на
QLibrary lib(“libdynlib”);
в соответствии со сформированным файлом динамической библиотеки. Но при компиляции и запуске основного приложения (листинг 42.4) в элементе QLabel отображается исходный текст с маленькими буквами…
При отладке кода приложения (листинг 42.4) после выполнения строки кода:
Fct fct = (Fct)(lib.resolve(oddUpper));
указатель на функцию fct становится равным 0…
Здравствуйте, Вячеслав!
Как я понял, Вы компилируете под Linux. Попробуйте в QtCreator не pro-файлы отдельных проектов Application.pro и DLL.pro, а файл DynLib.pro