Как стать автором
Обновить

Комментарии 5

Спасибо за статью, конечно, но немного насмешила фраза:
то давайте вместе пройдемся по граблям

Я всегда считал, что SDL — одна из простейших в интеграции библиотек (что может быть не для хидер-онли либы, конечно). Перечитал статью, никаких «граблей» не нашел.

А зачем «интегрировать» SDL в популярные IDE по-отдельности, когда можно использовать CMake на всех платформах и не хардкодить никаких \Mac\Home\Downloads\SDL2-2.0.9\include в свойствах проекта? Вся статья — вредный совет из серии «Как писать непереносимый софт, использую кроссплатформенный язык и кроссплатформенные библиотеки».

Я мог бы добавить что-то вроде
cmake_minimum_required(VERSION 3.14)
project(Test)
set(CMAKE_CXX_STANDARD 17)
find_package(SDL2 REQUIRED) 
include_directories(${SDL2_INCLUDE_DIRS}) 
add_executable(Test main.cpp)
target_link_libraries(Test ${SDL2_LIBRARIES})

Ну и небольшие отличия для windows.
Но я больше рассчитывал, что читать будут те, кто хочет поставить библиотеку и поиграться немного с ней. Если бы это использовали для командной разработки, то и вопросов как подключать библиотеку не было бы. Но вы абсолютно правы, через cmake будет проще для разработки на разных платформах. Я учту, для будущих статей(если они будут), что лучше ориентироваться на команду сразу.
А если софт например уже непереносимый (вся заточка на Windows например), в него запрещено добавлять кроссплатформенные библиотеки?)
Я сам хотел написать гневное «просто используйте CMake в 1 комменте», но подумал что так можно дойти до того, что новички в С++ будут знать только С++, а как работают форматы проектов на их платформе — и знать не будут. Так что «вредный совет» это легкое преувеличение. «небольшой полезности» я бы просто сказал.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации