gpt4 book ai didi

c - 在 Ubuntu 中使用 CLION 未定义对 SDL2 函数的引用

转载 作者:行者123 更新时间:2023-12-04 19:07:51 32 4
gpt4 key购买 nike

这是我在stackoverflow上的第一篇文章,所以请理解:)
我在 C 项目中的 Ubutun 上使用 CLion,一切正常,直到我开始使用 SDL2 ...
我有错误:未定义对“SDL_CreateWindow”的引用以及我想使用的所有 SDL2 函数。
我读了很多相同的错误,但在 Windows 和 Ubuntu 上,没有人...
我是 Makefiles 和 C 的初学者
那是我的代码:
主程序

#include "main.h"
#include "sdl_functions.h"

int main() {
int (*pieces) [10][10] = NULL;
return 0;
}
sdl_functions.c
#include <SDL2/SDL.h>
#include "sdl_functions.h"

void displayPiece(){

SDL_Window* window;
SDL_Renderer* renderer;

window=SDL_CreateWindow("TESTWINDOW", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 800, 800, 0);//error undefined reference to SDL_CreateWindow
}
这就是我的 CMakeLists.txt
cmake_minimum_required(VERSION 3.17)
project(project_name C)

set(CMAKE_C_STANDARD 99)
SET(CMAKE_CXX_LINK_FLAGS "-lSDL2")
add_executable(project_name main.c main.h sdl_functions.c sdl_functions.h)

最佳答案

也许,我在这篇文章中找到了解决方案
Linking SDL2 - CLion - Ubuntu 16.04 - G++
你必须打开你的 CMakeLists.txt
并像这样修改这个文件:

cmake_minimum_required(VERSION 3.17)
project(project_name C)

set(CMAKE_C_STANDARD 99)
find_package(SDL2 REQUIRED SDL2)
SET(CMAKE_CXX_LINK_FLAGS "-lSDL2")
add_executable(project_name main.c main.h sdl_functions.c sdl_functions.h)
target_link_libraries(project_name PRIVATE SDL2)
现在我有一个退出代码 0,所以目前它似乎有效

关于c - 在 Ubuntu 中使用 CLION 未定义对 SDL2 函数的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64621361/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com