[SOLVED]Undefined symbols for architecture x86_64? But only for iPhones?


it all works on all the ipad simulators and on my ipad devices, but i get this error when i build it for one of the iPhone simulators or on an iPhone device:

Please tell me why?


Don’t build x86_64 archs for iOS devices. This probably came about if you agreed with Xcode to update your project settings.

Exactly, that\s what i did by an accident…What can i do?


Can’t be bothered to reboot into my hackintosh at the mo, but in Xcode get up the project properties for your game and the cocos2d-x lib… somewhere in it you will find what architectures it compiles for. I think its at the top of build settings… Remove x86-64.
Have a good nosey around in build settings while you are there, you will find all sorts of good stuff!

In the project properties and the cocos2d project properties, there no such arhcitectures?

No such architecture ?


This problem has bothering me from yesterday, trying to google it didn’t help. But i think i come to solution, but the problem is that i don’t like it.
Main problem with RevMob library that you are using is that it was build without support for 64bit iOS.
And you are building cocos with support for 64bit iOS.
So if you wont it to work you need to change this, Im new user and cant upload images, but you can see on demo project of revmob how this needs to look.
For architecture you need to put: $(ARCHS_STANDARD_32_BIT)
And for valid architecture you need to put: armv7, armv7s, arm64
So you need to change in Build Settings:
cocos project targets:
-build all libs iOS
-cocos2dx iOS
-cocos2dx-extensions iOS
-chipmunk iOS
-box2d iOS
-CocosDension iOS

And in your project targets:
-projectName iOS

And now why i don’t like this solution, because from February 1, 2015, new iOS apps uploaded to the App Store must include 64-bit support. And by doing this i don’t know if my app will be accepted.

1 Like

Remove the i386 architecture. I think that will fix your problem. Fingers crossed!

Wow, i won’t use revmob from now according to cocos2d-x developing!

Also because of the eCPM, it’s pretty damn low atm.:frowning:

If i was u, i would do the same + that 32 bit arch!

BUT, i do aprpeciate ur reply SO MUCH!<3