繁体   English   中英

“对_ms_vsnprintf的未定义引用”

[英]“Undefined reference to _ms_vsnprintf”

我知道我做了什么。 这是我正在使用的库之一。 它引用了_ms__vsnprintf 我删除了文件,并编译了程序。 谢谢你的帮助。 供以后参考,文件为libglfw3.a

如何解决错误“对_ms_vsnprintf的未定义引用”? 我只看过另一篇关于它的文章,但这并不能解决我的问题。 我正在使用Windows 8,Code :: Blocks和MinGW。 这是我的代码。

#define __LCC__
#define GLEW_STATIC
#define GLFWAPI __declspec(dllimport)
#include <stdio.h>
#include <stdlib.h>
#include <GL/glew.h>
#define GLFW_INCLUDE_GLU
#include <GL/glfw3.h>
#include <glm/glm.hpp>
using namespace glm;
int main() {
if( !glfwInit() ) {
    fprintf( stderr, "Failed to initialize GLFW\n");
    return -1;
}
 glfwWindowHint(GLFW_SAMPLES, 4);
 glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
 glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
 glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

GLFWwindow* window;
window = glfwCreateWindow( 600, 800, "OpenGL Window", NULL, NULL);

if(window == NULL) {
    fprintf(stderr, "OpenGL Couldn't open the window.\n");
    glfwTerminate();
    return -1;
}

glfwMakeContextCurrent(window);
glewExperimental=true;
if (glewInit() !=GLEW_OK) {
    fprintf(stderr, "Failed to start GLEW.\n");
    return -1;
}
 }

这是Code :: Blocks的构建日志

-------------- Build: Debug in opengltest (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -lglfw3 -Wall -g -I..\..\MiniGW\lib\lib-mingw-w64 -c "D:\Programs\C PROGRAMS\opengltest\main.cpp" -o obj\Debug\main.o
mingw32-g++.exe -L..\..\MiniGW\lib\lib-mingw-w64 -L..\MiniGW\lib -o bin\Debug\opengltest.exe obj\Debug\main.o  -lglfw3 -lglfw3 -lopengl32 -lgdi32 -lglu32  ..\..\MiniGW\lib\Release\Win32\glew32s.lib ..\..\MiniGW\lib\lib-mingw-w64\glfw3dll.a ..\..\MiniGW\lib\lib-mingw-w64\libglfw3.a ..\..\MiniGW\lib\libglu32.a ..\..\MiniGW\lib\libopengl32.a
Warning: corrupt .drectve at end of def file
..\..\MiniGW\lib\lib-mingw-w64/libglfw3.a(init.c.obj):init.c:(.text+0x49): undefined reference to `__ms_vsnprintf'
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 13 second(s))
1 error(s), 1 warning(s) (0 minute(s), 13 second(s))

我用答案编辑了问题。 删除libglfw3.a后将其修复。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM