поэтому я делаю класс во внешней библиотеке, чтобы использовать его в проекте SDL. при использовании одного файла SDL правильно связан и работает нормально . Но когда я использую внешнюю библиотеку, я получаю Экран. cpp: 7: неопределенная ссылка на `SDL_Init ' я использую main. cpp, Screen. cpp и Screen.h это Screen.h
#ifndef TEST_CLASSSDL_SCREEN_H
#define TEST_CLASSSDL_SCREEN_H
#include "C:/dev/i686-w64-mingw32/include/SDL2/SDL.h"
class Screen {
public:
void init();
};
#endif
и это Screen. cpp
#include "Screen.h"
void Screen::init() {
SDL_Init(SDL_INIT_VIDEO);
}
и CMakeLists.txt (используется clion и очень важен здесь)
cmake_minimum_required(VERSION 3.15)
project(test_classSDL)
set(SDL2_LIB_DIR C:/dev/i686-w64-mingw32/lib)
include_directories(C:/dev/i686-w64-mingw32/include)
add_definitions(-DSDL_MAIN_HANDLED)
add_executable(${PROJECT_NAME} ${SDL2_LIB_DIR}/libSDL2.dll.a
${SDL2_LIB_DIR}/libSDL2main.a ${SDL2_LIB_DIR}/libSDL2_image.dll.a main.cpp Screen.cpp Screen.h)
и большое спасибо за помощь.