Tutorial: cocos2d Xcode Project: How to setup the received Xcode Project Template Comments Feed" href="http://www.learn-cocos2d.com/knowledge-base/tutorial-professional-cocos2d-xcode-project-template/feed/"/>

Tutorial: cocos2d Xcode Project: How to setup the received Xcode Project Template

Search my cocos2d for iPhone FAQs & Tutorials

Please note that the blog search in the upper right corner doesn’t search my FAQs and Tutorials.
 

  • Note: please do not share direct download links to PDF files, the download links expire after a couple minutes!

After downloading the files you may wonder how you get the Xcode project you received in the confirmation email to work. Don't worry, these are only a few steps you need to follow. The first, obviously, is to extract the ZIP file.

Download Lesson PDF

Unzip the Project

I decided to create a cocos2d folder where i put the project and the cocos2d-iphone project in. After unzipping the file you received in the confirmation email you should see a similar folder structure.

Download cocos2d-iphone

Refer to these instructions on how to download cocos2d-iphone from github. Alternatively you can also download cocos2d-iphone from the website and extract it.

The important thing is that the cocos2d-iphone folder should be installed side-by-side with the cocos2d-project folder as shown above.

Open the cocos2d-project in Xcode

You may notice that the cocos2d-iphone files are shown in red and that the project doesn't compile. You need to go through the steps outlined in the Xcode Preferences configuration for Cross-Project Referencing. These settings are essential for cross-project references to work. You can choose any build output folder but the Source Tree folder has to be the folder where you installed (downloaded) cocos2d-iphone to.

Rename the Project (optional)

In the menu choose Project -> Rename. It's as simple as that. This is new functionality introduced with Xcode 3.2.

Previous Xcode versions up to Xcode 3.1 had to rely on different methods to rename a project. The easiest solution for Xcode 3.1 users (other than upgrading) is to use the Rename Xcode Project tool.

You're good to go!

You should be able to successfully build the targets in the Project.
If you encounter any issues please leave a comment and i'll try to help.

Comments (1)

  1. Lukasz

    Hi Steffen!

    Your cocos2d tutorial is one of the best and the most useful tutorials I have ever seen. Thank you!
    I would add section about renaming cocos2d-iphone project - it's not so trivial :)

    Cheers,
    Lukasz

Tutorial Poll

What cocos2d or programming How-To/Tutorial would you like me to create? Choose up to three:

View Results

Loading ... Loading ...

170 Responses to “Tutorial: cocos2d Xcode Project: How to setup the received Xcode Project Template”

  1. Carl says:

    I get “cocos2d.h:No such file or directory” when trying to #import “cocos2d.h”

    what am I missing?

  2. vik says:

    This tutorial is toooo long.

    Is there a short version ? I spent two hours on this and as I expected nothing works.
    For begininers its not going to work

  3. Norm says:

    Great info! Thanks! However, the script is building the .ipa file before it does the codesign step. Have things changed in Xcode? How do I get the script to run after the codesign step?

  4. zutroi says:

    I tried twice to follow your tutorial step by step using cocos2d 0.99.5-rc1, Xcode 3.2.5 and iOS 4.2.1, but I keep having problems when building and running on device.
    The weird thing is I have no problem at all running the template on simulator!
    To be more clear:
    I’m trying to build and run following the final step of “Getting our Project Template to build minimal cocos2d code” section.
    Running on simulator works perfectly, running on device (iphone4) crashes after splash screen with this message on console:
    “Program received signal: “EXC_BAD_ACCESS”.
    warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).
    Previous frame inner to this frame (gdb could not unwind past this frame)”
    By stepping with debugger I found the app crashes on line 98 of AppDelegate.m:
    “// make the View Controller a child of the main window
    [window addSubview: viewController.view];”

    I see there are little differences from your (great) tutorial and Xcode/cocos2d new templates, mainly for the use of RootViewController, may this crash be related? (I already added RootViewController.* to my template)
    Has anyone found a fix to this problem?
    Please please please help me, this thing is driving me crazy =/
    Thanks

    • It might be related. Have you tried the version on github? https://github.com/GamingHorror/cocos2d-project
      That version is tested with 0.99.5

      But I recently started getting those “could not unwind” errors … I was able to fix them by changing the compiler in all referenced projects back to GCC.

      • zutroi says:

        Bingo!
        Thanks a lot, you point me to a fix.
        I had already tried with your latest github version, without luck.
        I followed your suggestion, changing the compiler to GCC 4.2 on all projects (both cocos2d-project and cocos2d-ios) and it worked!
        I suppose the problem was in compiler setting for cocos2d-ios, it was set to LLVM compiler 1.6.
        If I set compiler to different version for the two projects, I always get that crash, when using same gcc version, everything is ok.
        I tried also with LLVM GCC4.2 on both projects and it works too.

        Probably I never met this problem since using cocos2d built-in templates everything get compiled using gcc without further setting.
        Thanks a lot for your tutorials… and for fast replying too ;)

  5. Paris says:

    Hi Steffen

    To upgrade a project created with your template from e.g. 0.99.5 rc1 to the final 0.99.5 I just need to copy over the cocos2d-IPhone folder?

    I would assume yes but thought of asking since it does not clearly covered in the main points/links at the top of this tutorial

  6. Mehdi says:

    I receive a lot of EAGLView may not respond to …xxx warnings, and I believe these are the undeclared selectors you are mentioning in your comment. How can I fix it? Only with turning off the treat warning as error option or also by changing the code?

    I didn’t understand where to implement the code from your comment on this tutorial.

  7. rastermax says:

    Hi
    1st: GREAT job on this PDF. Realllly appreciated.

    I just did the first part up to Helloworld with the 99.5 version. (up to page 43 of pdf)

    You might want to update a bit, the part where we get the AppDelegate from Helloworld sample : since in 99.5 Cocos changed the samples so that for exemple main.m does not exists main() is in the delegate.m file.

    Continue the great work.

Leave a Reply