LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 795|回复: 3

这个编译错误好奇怪

[复制链接]
发表于 2005-3-5 10:39:41 | 显示全部楼层 |阅读模式
  1. 3 -mieee-fp -Wall -Wstrict-prototypes -O3 -mieee-fp  -D_SVID_SOURCE -D_BSD_SOURCE -DSHM  -c grskidmarks.cpp
  2. c++ -I/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/export/include  -O3 -march=pentium4 -pipe -fomit-frame-pointer -Wall -Wstrict-prototypes -O3 -mieee-fp -Wall -Wstrict-prototypes -O3 -mieee-fp  -D_SVID_SOURCE -D_BSD_SOURCE -DSHM  -c grloadac.cpp
  3. c++ -I/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/export/include  -O3 -march=pentium4 -pipe -fomit-frame-pointer -Wall -Wstrict-prototypes -O3 -mieee-fp -Wall -Wstrict-prototypes -O3 -mieee-fp  -D_SVID_SOURCE -D_BSD_SOURCE -DSHM  -c grmultitexstate.cpp
  4. grmultitexstate.cpp: In member function `virtual void
  5.    grMultiTexState::apply(int)':
  6. grmultitexstate.cpp:30: error: `glActiveTexture' undeclared (first use this
  7.    function)
  8. grmultitexstate.cpp:30: error: (Each undeclared identifier is reported only
  9.    once for each function it appears in.)
  10. make[5]: *** [grmultitexstate.o] Error 1
  11. make[5]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/src/modules/graphic/ssggraph'
  12. make[4]: *** [subdirs] Error 1
  13. make[4]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/src/modules/graphic'
  14. make[3]: *** [subdirs] Error 1
  15. make[3]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/src/modules'
  16. make[2]: *** [subdirs] Error 1
  17. make[2]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/src'
  18. make[1]: *** [subdirs] Error 1
  19. make[1]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2'
  20. make: *** [restart] Error 2
复制代码


编译torcs。提示30行glActiveTexture未定义。但我到看30行的函数是glActiveTextureARB而不是glActiveTexture。

这是出错那个文件

  1. /***************************************************************************

  2.     file                 : grmultitexstate.cpp
  3.     created              : Fri Mar 22 23:16:44 CET 2002
  4.     copyright            : (C) 2001 by Christophe Guionneau
  5.     version              : $Id: grmultitexstate.cpp,v 1.2 2002/11/24 20:44:08 torcs Exp $

  6. ***************************************************************************/

  7. /***************************************************************************
  8. *                                                                         *
  9. *   This program is free software; you can redistribute it and/or modify  *
  10. *   it under the terms of the GNU General Public License as published by  *
  11. *   the Free Software Foundation; either version 2 of the License, or     *
  12. *   (at your option) any later version.                                   *
  13. *                                                                         *
  14. ***************************************************************************/

  15. #include <plib/ssg.h>
  16. #include "grmultitexstate.h"

  17. #ifdef DMALLOC
  18. #include "dmalloc.h"
  19. #endif
  20. #include "grmain.h"

  21. void grMultiTexState::apply (int unit)
  22. {
  23.   if (unit==0) {
  24.       glActiveTextureARB ( GL_TEXTURE0_ARB ) ;
  25.       glEnable ( GL_TEXTURE_2D ) ;  /* Enables the second texture map. */
  26.       glBindTexture ( GL_TEXTURE_2D, ssgSimpleState::getTextureHandle() ) ;
  27.   } else if (unit==1) {
  28.       glActiveTextureARB ( GL_TEXTURE1_ARB ) ;
  29.       glEnable ( GL_TEXTURE_2D ) ;  /* Enables the second texture map. */
  30.       /* glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);*/
  31.       /*glBlendFunc(GL_ZERO, GL_SRC_COLOR);*/
  32.       glBindTexture ( GL_TEXTURE_2D, ssgSimpleState::getTextureHandle() ) ;
  33.   } else if (unit==2) {
  34.       glActiveTextureARB ( GL_TEXTURE2_ARB ) ;
  35.       glEnable ( GL_TEXTURE_2D ) ;  /* Enables the second texture map. */
  36.       glBindTexture ( GL_TEXTURE_2D, ssgSimpleState::getTextureHandle() ) ;
  37.   } else if (unit==3) {
  38.       glActiveTextureARB ( GL_TEXTURE3_ARB ) ;
  39.       glEnable ( GL_TEXTURE_2D ) ;  /* Enables the second texture map. */
  40.       glBindTexture ( GL_TEXTURE_2D, ssgSimpleState::getTextureHandle() ) ;
  41.   } else {
  42.       /*glActiveTextureARB ( GL_TEXTURE0_ARB ) ;*/
  43.       glBindTexture ( GL_TEXTURE_2D, getTextureHandle() ) ;
  44.       _ssgCurrentContext->getState()->setTexture ( getTexture () ) ;  
  45.   }
  46. }
复制代码
发表于 2005-3-5 11:48:01 | 显示全部楼层
难道这个是宏替换的?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-5 11:52:06 | 显示全部楼层
阿,有可能,我查查看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-3-5 12:30:24 | 显示全部楼层
我的include/GL里确实没有glActiveTexture这个函数。谁的系统上有?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表