编译OpenGL程序遇到的一个奇怪问题
今天编译一个OpenGL程序时遇到了一个很奇怪的问题。
一个简短的代码,实现画一个三角形。这个工程文件就包含一个cpp文件。工程以前运行时正确的,现在打开运行也正确。我的OpenGL是按照这篇文章进行配置的:
点击打开链接。应该没有什么问题。
但是当我新建一个工程并把原来的代码拷贝过来,运行便出错。而且我记得以前建立那个工程的时候并没有配置什么东西。为什么两个工程代码一模一样但是运行结果不一样呢?甚是郁闷啊!
下面贴代码:
打开原来的工程,运行成功:但是当我新建一个工程,把代码原封不动地拷贝过来,便出现错误。错误信息:
1>------ 已启动生成: 项目: Test, 配置: Debug Win32 ------
1>正在编译...
1>Test.cpp
1>正在链接...
1>LINK : 没有找到 E:\学习\程序练习\OpenGL\Test\Debug\Test.exe 或上一个增量链接没有生成它;正在执行完全链接
1>Test.obj : error LNK2019: 无法解析的外部符号 __imp____glutInitWithExit@12,该符号在函数 _glutInit_ATEXIT_HACK@8 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 __imp____glutCreateWindowWithExit@8,该符号在函数 _glutCreateWindow_ATEXIT_HACK@4 中被引用
1>E:\学习\程序练习\OpenGL\Test\Debug\Test.exe : fatal error LNK1120: 2 个无法解析的外部命令
1>生成日志保存在“file://e:\学习\程序练习\OpenGL\Test\Test\Debug\BuildLog.htm”
1>Test - 3 个错误,0 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
在网上找了好久,终于找到了解决办法:在#include <GL/glut.h>之前加上下列代码:
但是为什么要加这个呢?还是不太清楚。希望谁知道能够帮鄙人解惑。感激不尽~~~