*Plz help me i m porting game in android but i m geting error in eclipse “undefined reference to `GameLayer::GameLayer‘”\ in\ HelloWorld\ class\ which\ is\ inherited\ from\ GameLayer*
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/obj/local/armeabi/objs-debug/game_logic/HelloWorldScene.o:\ In\ function\ `HelloWorld’:
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:27:\ undefined\ reference\ to\ `GameLayer::GameLayer‘
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:27:\ undefined\ reference\ to\ `GameLayer::GameLayer()’
make:\ Leaving\ directory\ `/cygdrive/e/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/obj/local/armeabi/objs-debug/game_logic/HelloWorldScene.o:\ In\ function\ `HelloWorld::init‘:
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:55:\ undefined\ reference\ to\ `GameLayer::init()’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:61:\ undefined\ reference\ to\ `WorldByEditor::WorldByEditor‘
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:62:\ undefined\ reference\ to\ `WorldByEditor::init()’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/obj/local/armeabi/objs-debug/game_logic/HelloWorldScene.o:\ In\ function\ `HelloWorld::addNewSpriteWithCoords‘:\
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/obj/local/armeabi/objs-debug/game_logic/HelloWorldScene.o:\ In\ function\ `HelloWorld::draw()’:
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:157:\ undefined\ reference\ to\ `glDisable’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:158:\ undefined\ reference\ to\ `glDisableClientState’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:159:\ undefined\ reference\ to\ `glDisableClientState’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:163:\ undefined\ reference\ to\ `glEnable’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:164:\ undefined\ reference\ to\ `glEnableClientState’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:165:\ undefined\ reference\ to\ `glEnableClientState’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:169:\ undefined\ reference\ to\ `glEnable’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:170:\ undefined\ reference\ to\ `glColor4ub’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:171:\ undefined\ reference\ to\ `glLineWidth’
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/obj/local/armeabi/objs-debug/game_logic/HelloWorldScene.o:\ In\ function\ `~HelloWorld’:
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:481:\ undefined\ reference\ to\ `GameLayer::GameLayer()‘
E:/Acocos2d-x/cocos2d-1.0.1-x-0.11.0/MyBilliard/android/jni/…/…/Classes/HelloWorldScene.cpp:481: undefined reference to `GameLayer::GameLayer’
My\ header\ file\ HelloWorldScene.h
#pragma\ once
//\ When\ you\ import\ this\ file,\ you\ import\ all\ the\ cocos2d\ classes
#include\ “cocos2d.h”
#include\ “Layer/GameLayer/GameLayer.h”
//#include\ “MyContactListener.h”
#include\ “b2dContectList/ContectListener.h”//remove
#include\ “GLES-Render.h”
#include\ <Box2D/Box2D.h>\
#include\ “Layer/Level1/Ball.h”\
#include\ “Constants.h”
class\ ContectListener;//remove
using\ namespace\ cocos2d;
class\ HelloWorld\ :\ public\ GameLayer\ {
public:\
\ WorldByEditor\ *billiardWorld;\
\ HelloWorld;
\ virtualHelloWorld();
// returns a Scene that contains the HelloWorld as the only child
static CCScene* scene();
virtual void init();
};
in my HelloWorldScene.cpp
HelloWorld::HelloWorld()////////////////////////////////////////////////undefined reference to `GameLayer::GameLayer’
{\
\ GameLayer\ LAYER=new\ GameLayer;
\ screenSize\ =\ CCDirector::sharedDirector~~>getWinSize;
\ cocos2d::CCSprite\ background=\ CCSprite::spriteWithFile;
\ background~~>setAnchorPoint);
\ background~~>setPosition);
\ addChild;
}
CCScene\ HelloWorld::scene
{\
\ //’scene’\ is\ an\ autorelease\ object
\ CCScene\ **scene\ =\ new\ CCScene;\
\ //\ add\ layer\ as\ a\ child\ to\ scene
\ CCLayer**\ layer\ =\ new\ HelloWorld;
\ scene~~>addChild;
\ layer~~>release;
\ return\ scene;
}
void\ HelloWorld::init
{
\ //initialize\ superlayer
\ GameLayer::init;
\ //initialize\ some\ variable
\ setIsTouchEnabled;
\ setIsAccelerometerEnabled;\
\ stricker=false;
\ //back\ ground
\ billiardWorld=new\ WorldByEditor;
\ billiardWorld~~>init;\
\ addChild;
\ ///set\ up\ stick
\ stick=\ CCSprite::spriteWithFile;
\ stick~~>setAnchorPoint);\
\ stick~~>setPosition);
\ addChild;\
\ //setup\ main\ game\
\ setupBallSprites;
\ /////////////////////
\ setupPhysicsBodies;\
\ m_bodyIndex\ =\ 0;
\ m_angle\ =\ 0.0f;
\ schedule\ );\
}
HelloWorld::HelloWorld()//////////////////////////////////////////////////////undefined reference to `GameLayer::~GameLayer()’
{
unschedule(schedule_selector(HelloWorld::tick) );
//ball~~>destroyBodyInWorld;
delete billiardWorld~~>*world;
billiardWorld->*world = NULL;
}
//////////////////////////////////////////////////////////////////////////////////////