2017-01-14 1 views
0

J'ai fait face à un problème lorsque j'ai essayé de construire un projet simple à partir de la source en utilisant emscripten. Permettez-moi de décrire mes actes étape par étape:Comment construire cocos2dx en utilisant emscripten

  1. J'utilise ubuntu 14.04 LTS
  2. installer emscripten (I have followed instructions)
  3. installer cocos2dx (I have followed instructions on the github)
  4. J'ai créé nouveau projet (j'ai suivi les instructions sur github aussi), construis-le pour Linux et cours, ça marche bien.
  5. étape suivante J'ai essayé de construire pour le Web en utilisant emscripten dans le répertoire du projet, je suis entré dans la console:

    CMake -DCMAKE_CXX_COMPILER = em ++ -DCMAKE_CC_COMPILER = emcc

    faire

Tout d'abord, j'ai eu une erreur avec CC_DLL dans tinyxml2.h, j'ai supprimé CC_DLL, et relance. Ensuite, j'ai une erreur sur unknown include dans le répertoire "unzip" (j'ai copié zlib.h et zconf.h dans le répertoire) et relancez. J'ai erreur avec GLubyte -Utiliser d'identificateur non déclaré, j'ai ajouté:

#include <SDL/SDL.h> 
#include <GL/gl.h> 
#include <GL/glu.h> 

et exécutez à nouveau Et puis j'ai erreur utilisation d'identificateur non déclaré « de glDeleteBuffers »; dans le répertoire/cocos /2d/CCCameraBackgroundBrush.cpp et plusieurs mêmes erreurs, et je ne sais pas quoi faire ...

Pouvez-vous me aider s'il vous plaît comment y remédier?

Nous vous remercions de votre aide!

Répondre

2

Vous pouvez essayer d'utiliser emscripten-port de cocos2d. Ajoutez simplement -s USE_COCOS2D = 3 à votre build.

Je maintiens ce port, et j'ai déjà porté avec lui quelques jeux de cocos2dx.

Maintenant, ce port est fusionné uniquement avec la branche entrante. En outre, vous pouvez exécuter le projet cocos2d hello world avec cette commande:

python tests/runner.py browser.test_cocos2d_hello 
+0

Nous vous remercions de votre aide! Existe-t-il un tutoriel sur la façon de construire un projet de test (Démarrage rapide, guide ou une sorte de guide)? – Mike

+1

Vous pouvez regarder le test 'cocos2d_hello' dans tests/test_browser.py. Ajouter seulement les flag -s USE_COCOS2D = 3 devrait être suffisant pour construire le fichier source du jeu cocos2d. (./emcc -s USE_COCOS2D = 3 game.cpp -o jeu.html) – caiiiycuk

+0

J'ai essayé de compiler (https://github.com/emscripten-ports/Cocos2d) make -s USE_COCOS2D = 3 -s STB_IMAGE = 1 erreurs: AR /Cocos2d/lib/linux/release/libchipmunk.a CXX obj/release/CCBReader/CCBFileLoader.o Dans le fichier inclus à partir de CCInvocation.h: 33: 0, de CCNodeLoader.h: 4 , à partir de CCBFileLoader.h: 4, à partir de CCBFileLoader.cpp: 1: CCObject.h: 106: 39: erreur: ISO C99 requiert des espaces après le nom de macro [-Werror] #define EMULATE_FUNCTION_POINTER_CASTS = 1 cc1plus: tous les avertissements étant traités comme des erreurs make [1]: *** [CCBFileLoader.o] Ошибка 1 make: *** [libextensions] Ошибка 2 – Mike