语言

Menu
Sites
Language
Can't build release versions

I'm banging my head against a wall after spending three days trying to compile a release build for tizen in C++, using version 2.2 of cocos2d-x.

I have no problems building the emulator and debug-device versions, but when I try to do a release build I get lots of errors - missing headers and stuff.

Everything is set for ARMv7-a and for a release build and the security profiles are all set up.

I have tried copying the settings/includes for the debug-device version and got a little further forward (success with Box2D and cocos2dx), but this doesn't seem to work for others like extensions or CocoDenshion.

I have now tried everything I can think of to fix my problems and googled for hours and hours and I am now completely stuck and run out of ideas.

Can anyone be so kind as to give me a simple set of instructions with the details of what I need to change to build a release build for one of the samples - say TestCpp for example?

编辑者为: meme last 20 10月, 2013

响应

6 回复
meme last

Thanks for your reply.

I had already found those links in my extensive googling and tried all the suggestions with no luck.

I've also tried on different OS's with the same result.

I figure there is something simple I'm missing like a setting change or something, but I don't have a clue what else to try now.

meme last

OK, I've made some progress - switching to ubuntu 32 bit and starting a new project seems to have helped with most of my problems.

I now have everything built apart from 1 thing.

I am getting the following build errors only on the RELEASE version with AppDelegate.cpp & AppDelegate.h.

In file included from /home/meme/dev/cocos2d-x-2.2/samples/Cpp/TestCpp/Classes/AppDelegate.cpp:1:
/home/meme/dev/cocos2d-x-2.2/samples/Cpp/TestCpp/Classes/AppDelegate.h:11:39: error: expected class name
class  AppDelegate : private cocos2d::CCApplication
                                      ^
/home/meme/dev/cocos2d-x-2.2/samples/Cpp/TestCpp/Classes/AppDelegate.cpp:18:30: error: incomplete type 'cocos2d::CCEGLView' named in
nested name specifier
    pDirector->setOpenGLView(CCEGLView::sharedOpenGLView());
                             ^~~~~~~~~~~
../../../../../cocos2dx/CCDirector.h:68:7: note: forward declaration of 'cocos2d::CCEGLView'
class CCEGLView;
      ^

I didn't write the AppDelegte code or any of it - it's just the TestCpp that comes with cocos2d-x, so I have know I haven't messed up in the coding.

I just can't see why everything else compiles but this one thing and it only fails in the release version.

Perhaps TestCpp isn't able to be built for release?

Anybody got any suggestions at all or any clue what these errors mean and how to fix them?

donghyuk yang

Hello.

I think that there are differences between "Debug-Tizen-Device" and "RELEASE" build configuration.

You can check build configurations on "Properties of project > C/C++ Build" page.

Compare following options:

 - C/C++ Build > Build Variables

 - C/C++ Build > Tool Settings > C++ Compiler > Preprocessor

 - C/C++ Build > Tool Settings > C++ Compiler > Includes

 - C/C++ Build > Tool Settings > C++ Linker > Libraries

You should sync options if there are differences.

 

donghyuk yang

I wrote wrong.

 C/C++ Build > Tool Settings

  => C/C++ Build > Settings > Tool Settings.

I actually have built the project successfully after fixing difference compiler/link options.

 

meme last

Thanks for that donghyuk yang.

I actually got it working myself yesterday evening but only on ubuntu 32 bit.

I messed around with so many setting that I can't remember exactly what I did, but what you suggest sounds right and was what I was trying.

I still couldn't get it to work on windows 7 64 bit so there must be a problem with the SDK or my setup.

I'll just stick to ubuntu from now on.