title: Cocos2d-x in QtCreator on Ubuntu
body: <p>I try to run cocos2d-x v 2.2 helloword project in QtCreator. I'm using this project file based on this repository <a href="https://github.com/FlyingFishBird/cocos2d-x_2_0_4_templete_for_qtcreator/graphs/contributors" rel="noreferrer">https://github.com/FlyingFishBird/cocos2d-x_2_0_4_templete_for_qtcreator/graphs/contributors</a></p>
  
  <pre><code>   TEMPLATE = app
  CONFIG += console
  CONFIG -= app_bundle
  CONFIG -= qt
  
  CONFIG(debug, debug|release) {
  DESTDIR = bin/debug/
  }
  
  CONFIG(release, debug|release) {
  DESTDIR = bin/release/
  }
  
  
  RESOURCES = Resources.qrc
  
  SOURCES += Classes/AppDelegate.cpp  \
      Classes/HelloWorldScene.cpp \
      proj.linux/main.cpp
  
  HEADERS +=Classes/AppDelegate.h \
      Classes/HelloWorldScene.h
  
  
  COCOS2DX_ROOT = $$system(echo $COCOS2DX_ROOT)
  
  # set include path and depend path
  COCOS_INCLUDE_DEPEND_PATH += $$COCOS2DX_ROOT/cocos2dx \
          $$COCOS2DX_ROOT/cocos2dx/include \
          $$COCOS2DX_ROOT/cocos2dx/cocoa \
          $$COCOS2DX_ROOT/cocos2dx/kazmath/include \
          $$COCOS2DX_ROOT/cocos2dx/platform \
          $$COCOS2DX_ROOT/CocosDenshion/include \
          $$COCOS2DX_ROOT/extensions \
          $$COCOS2DX_ROOT/external
  
  
      DEFINES += LINUX
  
          COCOS_INCLUDE_DEPEND_PATH += $$COCOS2DX_ROOT/cocos2dx/platform/linux
  
      LBITS = $$system(getconf LONG_BIT)
  
          contains(LBITS,64) {
                  COCOS_INCLUDE_DEPEND_PATH += $$COCOS2DX_ROOT/platform/third_party/linux/include64
                  STATICLIBS_DIR += $$COCOS2DX_ROOT/cocos2dx/platform/third_party/linux/libraries/lib64
          contains(COCOS2D-X_MODULES,CocosDenshion) {
                          SHAREDLIBS_DIR += $$COCOS2DX_ROOT/CocosDenshion/third_party/fmod/lib64/api/lib
              SHAREDLIBS += -L$$SHAREDLIBS_DIR -lfmodex64
          }
  
          DEFINES += NDEBUG
  
                  SHAREDLIBS += -L$$COCOS2DX_ROOT/lib/linux/release -Wl,-rpath,$$COCOS2DX_ROOT/lib/linux/release
  
                  STATICLIBS += $$COCOS2DX_ROOT/lib/linux/release/libbox2d.a
  
          SHAREDLIBS += -lcocos2d -lrt -lz
          SHAREDLIBS += -lfreetype -lcurl -lGL -lGLEW
  #        SHAREDLIBS += -lxml2 -lpng -ljpep -ltif\f
  
          SHAREDLIBS += -lcocosdenshion
  
  
      SHAREDLIBS += -Wl,-rpath,$${SHAREDLIBS_DIR}
      SHAREDLIBS += -Wl,-rpath,$$STATICLIBS_DIR
  
      LIBS += $${STATICLIBS}
      LIBS += $${SHAREDLIBS}
  } 
  
  INCLUDEPATH += $${COCOS_INCLUDE_DEPEND_PATH}
  DEPENDPATH += $${COCOS_INCLUDE_DEPEND_PATH}
  </code></pre>
  
  <p>My main.cpp file:</p>
  
  <pre><code>  #include "../Classes/AppDelegate.h"
  #include "cocos2d.h"
  #include "CCEGLView.h"
  
  #include &lt;stdlib.h&gt;
  #include &lt;stdio.h&gt;
  #include &lt;unistd.h&gt;
  #include &lt;string&gt;
  
  #include "../Classes/AppDelegate.h"
  
  USING_NS_CC;
  
  // 500 is enough?
  #define MAXPATHLEN 500
  
  int main(int argc, char **argv)
  {
      // get application path
      int length;
      char fullpath[MAXPATHLEN];
      length = readlink("/proc/self/exe", fullpath, sizeof(fullpath));
      fullpath[length] = '\0';
  
      std::string resourcePath = fullpath;
      resourcePath = resourcePath.substr(0, resourcePath.find_last_of("/"));
      resourcePath += "/../../Resources/";
  
      // create the application instance
      AppDelegate app;
      CCApplication::sharedApplication()-&gt;setResourceRootPath(resourcePath.c_str());
      CCEGLView* eglView = CCEGLView::sharedOpenGLView();
      eglView-&gt;setFrameSize(800, 480);
  
      return CCApplication::sharedApplication()-&gt;run();
  }
  </code></pre>
  
  <p>The project compiled properly without errors, but when the application run, the window with black screen appear and disappear in the next moment. I think that run() method return -1. The console output print me this:</p>
  
  <pre><code>cocos2d-x debug info [Ready for GLSL]
  cocos2d-x debug info [Ready for OpenGL 2.0]
  </code></pre>
  
  <p>I try to run my project on Ubuntu 12.04. Can anybody know what I doing wrong?</p>
  
  <p>===== edit
  AppDelegate: </p>
  
  <pre><code>#include "AppDelegate.h"
  #include "HelloWorldScene.h"
  
  USING_NS_CC;
  
  AppDelegate::AppDelegate() {
  
  }
  
  AppDelegate::~AppDelegate() 
  {
  }
  
  bool AppDelegate::applicationDidFinishLaunching() {
      // initialize director
  
      CCDirector* pDirector = CCDirector::sharedDirector();
      CCEGLView* pEGLView = CCEGLView::sharedOpenGLView();
  
      pDirector-&gt;setOpenGLView(pEGLView);
  
      // turn on display FPS
      pDirector-&gt;setDisplayStats(true);
  
      // set FPS. the default value is 1.0/60 if you don't call this
      pDirector-&gt;setAnimationInterval(1.0 / 60);
  
      // create a scene. it's an autorelease object
      CCScene *pScene = HelloWorld::scene();
  
      // run
      pDirector-&gt;runWithScene(pScene);
  
      return true;
  }
  
  // This function will be called when the app is inactive. When comes a phone call,it's be invoked too
  void AppDelegate::applicationDidEnterBackground() {
      CCDirector::sharedDirector()-&gt;stopAnimation();
  
      // if you use SimpleAudioEngine, it must be pause
      // SimpleAudioEngine::sharedEngine()-&gt;pauseBackgroundMusic();
  }
  
  // this function will be called when the app is active again
  void AppDelegate::applicationWillEnterForeground() {
      CCDirector::sharedDirector()-&gt;startAnimation();
  
      // if you use SimpleAudioEngine, it must resume here
      // SimpleAudioEngine::sharedEngine()-&gt;resumeBackgroundMusic();
  }
  </code></pre>
  
  <p>But I think that, the code from appdelegate never execute :/</p>