如何解决使用高兴时出现分段错误
这是我的代码:
#include <stdio.h>
#include "glad/glad.h"
#include "GLFW/glfw3.h"
static void key_callback(GLFWwindow* window,int key,int scancode,int action,int mods)
{
if (key == GLFW_KEY_ESCAPE && action == GLFW_PRESS)
glfwSetwindowShouldClose(window,GLFW_TRUE);
}
int main(){
if (!glfwInit()){
// Initialization Failed
}
GLFWwindow* window = glfwCreateWindow(640,480,"My Title",NULL,NULL);
if (!window){
// Window or OpenGL context creation Failed
}
glfwMakeContextCurrent(window);
// if(!gladLoadGL()){
// // glad Failed to load
// }
glfwSetKeyCallback(window,key_callback);
int width,height;
glfwGetFramebufferSize(window,&width,&height);
glViewport(0,width,height);
while (!glfwWindowShouldClose(window))
{
// Keep running
glfwPollEvents();
}
glfwDestroyWindow(window);
glfwTerminate();
return 0;
}
这是我用来构建它的脚本:
#!/bin/bash
gcc -Wall -Wextra -g -Iinclude -Llib -o morg src/glad.c src/main.c -lglfw -lcommon -ldl
一切都按预期进行,直到包括高兴为止。网络服务为我生成的文件是 here。在我包含 -ldl
标志之前,程序根本无法编译。
现在程序编译没有错误,但是当我运行它时,我得到以下信息:
br.sh: line 2: 5821 Segmentation fault (core dumped) ./morg
知道为什么会发生这种情况吗?我发现 this 似乎相关,静态库和动态库之间存在某种混淆?理想情况下,我想尽可能使用静态库。
提前致谢。
编辑: 我注释掉了我加载高兴的代码,但忘记取消注释了。它正盯着我的脸。抱歉浪费您的时间。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。