Уроки Cmake. Создание статической и динамической библиотек.
Вставка
- Опубліковано 18 гру 2024
- Сервис помогающий в решении задач студентам vse-sdal.com/p...
Уроки Cmake. Создание статической и динамической библиотек.
---------------------------------------------------------------------------------------------
!ВАЖНО! Помощь каналу
www.donational...
Стать спонсором канала / @cppprosto
Яндекс кошелек - 4100 1163 2706 8392
rutube - rutube.ru/chan...
yandex - zen.yandex.ru/...
---------------------------------------------------------------------------------------------
t.me/cppprosto...
ccppprosto
список видеороликов (cppprosto.blogs...)
---------------------------------------------------------------------------------------------
#cppprosto
#сиплюсплюс
#ityoutubers
#советыс++
#урокис++
#урокисиплюсплюс
#cmake
#make
#урокипрограммирование
#программист
#программирование
#выучитьпрограммирование
#онлайнуроки
Спасибо, очень нравятся ваши уроки. Без заумной подачи, прям то что нужно!
Супер , мое почтение . Очень хорошо объяснили.
Спасибо большое за такие полезнейшие уроки!
Пожалуйста :-)
Я один не вижу ссылки на исходник на github?
github.com/cCppProsto/cmake
Видео супер! Можешь сделать видео про то как и что нужно знать и уметь junior`y c++ development`y? Хотя бы лично твое мнение либо практика из жизни. Очень буду благодарен!
Тоже интересно.
Попробую. Нужно подумать :-)
Очень крутое видео. спасибо!
Пробовал так линковать, пишет undefined reference...
👍
Просмотрел все 16 минут в надежде услышать объяснение к флагам PRIVATE, PUBLIC, INTERFACE но так и не услышал. Зато целую минуту рассказывали сложнейшую вещь что на первом месте в target_include_directories() идет цель а потом сорцы
А где ссылка на github?
скачал Ваш проект с гитхаба, пытаюсь собрать у себя (ОС Windows 10, MVS 2019, CMake 3.19). Скажите, почему если делать библиотеку типа STATIC все проходит хорошо, но если SHARED, то вылетает такое:
LINK : fatal error LNK1181: не удается открыть входной файл "Release\cmake_example_3_lib.lib" [D:\Qt\shared_lib\build\cmake_example_3.vcxproj]
изначально делал свой проект, та же ситуация, подумал опечатку где то сделал - скачал Ваш проект. В итоге все также...дело в версии CMake? или все MVS?
оказывается при генерации динамической библиотеки на Windows есть свои особенности. Перед add_library должна быть команда
set ( CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON ) , которую ввели с версии CMake 3.4
Или
нужно прописывать специальные макросы для экспорта библиотеки в сам код библиотеки.
Более подробно можно изучить здесь habr.com/ru/post/278207/
пример из источника:
# Проверка версии CMake
cmake_minimum_required( VERSION 3.4.0 )
# Если версия установленной программы ниже, то ошибка выполнения
# Название проекта и проверка доступности компилятора с++
project( shared_lib CXX )
# Установка переменной со списком исходников
set( SOURCE_LIB example.cpp )
# Включение экспорта всех символов для создания динамической библиотеки
set ( CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON )
# Создание динамической библиотеки с именем example
add_library( example SHARED ${SOURCE_LIB} )
@@borns13666 большое спасибо за комментарий, очень помогли
@@borns13666спасибо большое
можно на цитаты разбирать )) симаке и маке )
всё это обычные фразочки разрабов
Как же ухо режит этот ваш псведОним...