Каковы основные шаги для компиляции приложения OpenGL с использованием GLUT (OpenGL Utility Toolkit) в Visual C++ Express Edition?Использование GLUT с Visual C++ Express Edition
ответ
- Если у вас нет Visual C++ Express Edition (VCEE), загрузите и установите VCEE.
- Установленная по умолчанию установка Visual C++ Express Edition для платформы .NET. Нам нужно будет создать платформу Windows, так как OpenGL и GLUT еще не полностью поддерживаются в .Net. Для этого нам нужен пакет Microsoft Platform SDK. (Если вы используете старую версию VCEE, загрузите и установите Microsoft Platform SDK. Visual C++ Express Edition необходимо будет настроить для платформы Windows. Все эти инструкции доступны here.)
- Если у вас нет GLUT, загрузите и распакуйте Nate Robin's Windows port of GLUT.
- Добавить glut.h к вашему Platform SDK/включить/GL/каталог
- Link проект с glut.lib. (Перейти к VCEE Свойства проекта -.> Дополнительные Linker Каталоги и добавить каталог, который имеет glut.lib
- Добавить glut.dll в Windows/System32 каталога, так что все программы, использующие GLUT можно найти во время выполнения.
Ваша программа, которая использует GLUT или OpenGL следует компилировать под Visual C++ Express Edition в настоящее время.
перенасыщение порт на сайте Nate Робина от 2001 nd имеет некоторые несовместимости с версиями Visual Studio более поздними, чем это (.NET 2003 и выше). Несовместимость проявляется как ошибки в переопределении exit()
. Если вы видите эту ошибку, есть два возможных решения:
- Заменить
exit()
прототипglut.h
с в вашемstdlib.h
так, что они совпадают. Это, вероятно, лучшее решение. - Простым решением является
#define GLUT_DISABLE_ATEXIT_HACK
перед вами#include <gl/glut.h>
в вашей программе.
(Из-за кредит: Первоначально я видел этот совет на TAMU help desk website.)
Я использую подход # 1 сами, так как .NET 2003 вышел, и использовал тот же модифицированный glut.h
с VC++ 2003 , VC++ 2005 и VC++ 2008.
Вот дифференциал для glut.h я использую, который делает # 1 (но в соответствующем #ifdef blocks
, так что он все еще работает со старыми версиями Visual Studio):
--- c:\naterobbins\glut.h 2000-12-13 00:22:52.000000000 +0900
+++ c:\updated\glut.h 2006-05-23 11:06:10.000000000 +0900
@@ -143,7 +143,12 @@
#if defined(_WIN32)
# ifndef GLUT_BUILDING_LIB
-extern _CRTIMP void __cdecl exit(int);
+/* extern _CRTIMP void __cdecl exit(int); /* Changed for .NET */
+# if _MSC_VER >= 1200
+extern _CRTIMP __declspec(noreturn) void __cdecl exit(int);
+# else
+extern _CRTIMP void __cdecl exit(int);
+# endif
# endif
#else
/* non-Win32 case. */
Baxissimo: Спасибо, что указали эту общую ошибку и ее исправление. Я видел, что почти каждый новичок OpenGL сталкивается с этой ошибкой. – 2008-09-29 08:43:09
- 1. Visual C++ Express Edition
- 2. Приложение GUI с Visual C++ Express Edition
- 3. Visual Studio Express Edition
- 4. функции Visual Studio Express Edition
- 5. Создание проекта в Visual C++ express edition
- 6. Rss Reader в Visual C# express edition
- 7. MS Visual Studio Express Edition
- 8. Лицензия Visual Studio 2005 Express Edition
- 9. Работа с Visual C++ 2008 Express Edition работает неправильно
- 10. ++ вектор ошибки C (Visual C++ 2008 Express Edition)
- 11. visual C++ 2008 express
- 12. F # и Visual Studio 2010 Express Edition?
- 13. Visual Studio Express Edition против сообщества
- 14. Лицензия на Visual Studio 2005 Express Edition
- 15. System.Diagnostics.Debugger.Launch(); на Visual Studio C# 2010 Express edition
- 16. Определение зависимостей .dll в Visual Studio Express Edition C#
- 17. Как создать IronRuby на Visual C# 2008 Express Edition?
- 18. C++ первая программа в Visual Studio 2008 Express Edition
- 19. Как установить библиотеку wiimote в Visual C# Express Edition
- 20. Чтобы указать Startup Program в Visual C# Express Edition 2008
- 21. Wave-vs.net Программирование пара для Visual C++ 2010 Express Edition
- 22. Где браузер объектов в Visual Studio C# 2010 Express Edition?
- 23. Visual C# Express Edition аргументы командной строки из IDE
- 24. изменение настроек на C# в visual studio 2010 express edition
- 25. Приложение Visual C# 2010 Express Edition не корректно
- 26. Проблема точки останова в MS Visual C# 2008 Express Edition
- 27. Как интегрировать SQL Server 2005 Express Edition в Visual Web Developer 2008 Express Edition
- 28. Visual C++ Express Brace-Completion
- 29. OpenMP в Visual C++ 2008 Standard Edition
- 30. Начните с Oracle Express Edition?
Спасибо тонну! Для тех из нас, которые не совсем понимают шаг 4, это переведено в следующий каталог для меня (в качестве примера): C: \ Program Files \ Microsoft SDK \ Windows \ 7.0a \ Include \ GL . 'находится на том же уровне, что и «Include» (в этом случае вам не нужно объявлять и дополнительный каталог компоновщика). – Gazza 2012-08-18 18:50:26