我正在使用eclipse与C和opengl.然而,在我的程序中,我不能使用#include或我得到以下错误在启动配置中指定的程序文件不存在C:\Users\workspace\mapCreator\MapCreator. exe未找到
控制台看起来像这样
08:10:17增量构建项目mapCreator的配置文件信息:内部构建器用于构建g“-IC:\MinGW\lib\gcc\mingw 32\4. 6. 2\include”“-IC:\MinGW\lib\gcc\mingw 32\4.6.2\include-fixed””-IC:\MinGW\lib\gcc\mingw32\4.6.2\include\c ”“-IC:\MinGW\lib\gcc\mingw32\4.6.2\include\c\backward”“-IC:\MinGW\lib\gcc\mingw32\4.6.2\include\c++\mingw32””-IC:\MinGW\include”-O 0-g3 -Wall -c -fmessage-length=0 -o
"src\main.o" "..\src\main.cpp" In file included from
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/char_traits.h:41, from
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/ios:41, from
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/ostream:40, from
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/iostream:40, from
..\src\main.cpp:4:
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h: In
function 'OI std::_copy_move_a(_II, _II, _OI)':
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h:378:
error: expected primary-expression before ')' token
字符串
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h:378:错误:“__is_trivial”没有依赖于模板参数的参数,因此“__is_trivial”的声明必须可用
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h:378:注意:(如果你使用'-fpermissive',G将接受你的代码,但是不赞成使用未声明的名称)
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c/bits/stl_algobase.h:383:错误:'__simple'不能出现在常量表达式中
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h:384:错误:模板参数2无效
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h:在函数“BI 2 std::_copy_move_backward_a(_BI1,_BI1,_BI2”中:C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h:573:错误:在“)”标记之前需要主表达式
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h:573:错误:“__is_trivial”没有依赖于模板参数的参数,因此“__is_trivial”的声明必须可用
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c++/bits/stl_algobase.h:578:错误:'__simple'不能出现在常量表达式中
C:\MinGW\lib\gcc\mingw32\4.6.2\include\c /bits/stl_algobase.h:579:错误:模板参数2无效g -o mapCreator.exe
“src\main.o”-lopengl 32-lglu 32-lglu 32 g++:src\main.o:没有这样的文件或目录
08:10:18构建完成(耗时1s.31ms)
我的代码只是我一直在修改的一些示例代码,如下所示:
#include <windows.h>
#include <GL/glut.h>
#include <iostream>
using namespace std;
const int WIDTH = 600;
const int HEIGHT = 480;
void init();
void display();
void loop();
void init() {
glClearColor( 0.0, 0.0, 0.0, 1.0 ); /* Set the clear color */
}
/* Displays a black clear screen */
void display() {
glClear( GL_COLOR_BUFFER_BIT ); /* Clear the screen with the clear color */
glutSwapBuffers(); /* Double buffering */
}
/* The main function */
int main( int argc, char *argv[] ) {
/* Glut setup function calls */
glutInit( &argc, argv );
glutInitDisplayMode( GLUT_DOUBLE | GLUT_RGB ); /* Use double buffering and RGB colors */
glutInitWindowPosition( 100, 100 );
glutInitWindowSize( WIDTH, HEIGHT );
glutCreateWindow( argv[0] );
init();
glutDisplayFunc( display ); /* Call back display function */
glutMainLoop(); /* Continue drawing the scene */
return 0;
}
型
它目前崩溃了,但是我删除#include的第二个,它工作得很好。
更多信息:
看起来.exe由于某种原因没有被创建-我已经清理了项目,我已经构建了它,甚至重新启动了eclipse。但是它没有任何效果。
x1c 0d1x的数据
的
我试过运行一个非常基本的程序,但仍然使用iostream,GL/glut.h和windows. h,即使这样,它仍然崩溃。我认为这意味着它的设置方式有问题。如果你真的需要它的代码:
#include <iostream>
#include <GL/glut.h>
#include <windows.h>
using namespace std;
int main(){
cout<<"hello";
return 0;
}
型
3条答案
按热度按时间lsmd5eda1#
尝试在第一个程序中的
GL/glut.h
之后包含windows.h
。kfgdxczn2#
1.不编译!=“它崩溃”
1.“似乎.exe文件由于某些原因没有被创建”--丢失的.o文件怎么样?这在错误消息中是字面意思。
1.来自
<iostream>
的错误不可能是由于 later 包含任何东西引起的。你说你尝试了每一个组合,甚至首先显示包含<iostream>
。这会导致同样的错误吗?如果是这样,你的编译器安装失败了。u3r8eeie3#
解决方案很简单,我有同样的问题,但在c++只是确保你导入opengl库最后ie
字符串
不
型
为我工作