找回密码
 立即注册
收起左侧

Qt greater 使用SDL2.0.9的问题

3
回复
3148
查看
[复制链接]
累计签到:82 天
连续签到:1 天
来源: 2019-5-29 16:06:41 显示全部楼层 |阅读模式
30Qter豆
1、环境:WINDOW10(64位)、软件——Qt greater 5.12、SDL2.0.9

2、问题:配置好SDL后,进行测试SDL是否安装好,出现error: undefined reference to `SDL_Init',测试代码如下
if(SDL_Init(SDL_INIT_VIDEO)) {            printf( "Could not initialize SDL - %s\n", SDL_GetError());        } else{            printf("Success init SDL");        }        return ;
3、配置方式:在PRO文件中手动添加SDL库文件,如下
INCLUDEPATH+=E:/myplayer/myplayer/SDL2-2.0.9/x86_64-w64-mingw32/include
LIBS+=-LE:/myplayer/myplayer/SDL2-2.0.9/x86_64-w64-mingw32/-llibSDL2     \      -LE:/myplayer/myplayer/SDL2-2.0.9/x86_64-w64-mingw32/-llibSDL2_test     \      -LE:/myplayer/myplayer/SDL2-2.0.9/x86_64-w64-mingw32/-llibSDL2main     \4、注意:已经添加了头文件声明,如下

extern "c"{#include"SDL2/SDL.h"}

5、由于本人在网上也查了很久,所以只能拜托各位大神了,求指导,也可加QQ:937665133,谢谢~

回复

使用道具 举报

累计签到:82 天
连续签到:1 天
2019-5-29 16:59:21 显示全部楼层
QT5.12上使用SDL2.0.9有人试过?是否存在版本不兼容的问题/?
回复

使用道具 举报

累计签到:82 天
连续签到:1 天
2019-5-30 15:53:53 显示全部楼层
以下是测试代码,有空的小伙伴们可以尝试下
回复

使用道具 举报

累计签到:82 天
连续签到:1 天
2019-5-30 16:02:38 显示全部楼层
本人在网上查了很久,这种情况一般都是编译器找不到SDL库造成的,原因一般有以下几点:1、SDL库与编译环境位数不一致;2、忘记添加DLL库;3、SDL库本身用到main,会出现警告或错误提示,只需要在声明时加上"undef main"即可;4、构建静态库顺序不对,正确是-lSDL2main  -lSDL2,其他库接着添加即可;
很可惜本人自身的问题,还没有找到,心累。。。。。。。。。。。。。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了