Сведения о вопросе

Solllo

01:26, 27th August, 2020

Теги

opengl   glut    

GLUT ошибка переопределения выхода

Просмотров: 492   Ответов: 2

В моей простой программе OpenGL я получаю следующую ошибку о переопределении выхода:

1>c:\program files\microsoft visual studio 8\vc\include\stdlib.h(406) : error C2381: 'exit' : redefinition; __declspec(noreturn) differs
1>        c:\program files\microsoft visual studio 8\vc\platformsdk\include\gl\glut.h(146) : see declaration of 'exit'

Я использую Nate Robins ' GLUT для Win32 и получаю эту ошибку с Visual Studio 2005 или Visual C++ 2005 (Express Edition). В чем причина этой ошибки и как ее исправить?



  Сведения об ответе

PHPH

23:23, 5th August, 2020

Причина:

stdlib.h , который поставляется с последними версиями Visual Studio, имеет другое (и конфликтующее) определение функции exit() . Это противоречит определению в glut.h .

Решение:

Переопределите определение в glut.h с тем, что в stdlib.h. Поместите строку stdlib.h над строкой glut.h в своем коде.

#include <stdlib.h>
#include <GL/glut.h>


  Сведения об ответе

baggs

17:46, 7th August, 2020

или вот это... Чтобы исправить ошибку, щелкните правой кнопкой мыши имя проекта на вкладке решение Explorer и выберите Свойства - > C/C++ -> препроцессор - > определения препроцессора и добавьте GLUT_BUILDING_LIB к существующим определениям, разделенным точкой с запятой.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться