After following all the instructions on http://three20.info/setup/existing to integrate three20 library into my project. I'm getting this linking error:
duplicate symbol _TTCreateNonRe开发者_如何学编程tainingArray in /test XYZ Photos App/Three20/Build/Products/Debug-iphonesimulator/libThree20Core.a(TTGlobalCore.o) and /test XYZ Photos App/Three20/Build/Products/Debug-iphonesimulator/libThree20.a(TTGlobalCore.o)
What can I try to resolve this?
Ok, after hours of figuring, I was able to solve this.. The answer is Three20 won't compile if your project is inside any parent folder with a space character.
I still had the same problem even after removing spaces in parent folder names (and deleting build cache, etc.), this is what worked for me (see https://github.com/facebook/three20/issues/issue/210/#issue/210/comment/526603):
In three20 install instructions step "2. Locate the "Three20.xcodeproj" file under "three20/src/Three20/" when I created a "Folder Reference" instead of a group reference, it worked. For the subsequent Xcode projects that get added, the "Folder Reference" radio was grayed out, but they all added properly and it worked after that (note that I had to re-do the subsequent step of adding Direct Dependencies to the targets).
When i was using the samples I met that problem, but there was no space in the name of my project folder. So i just downloaded a new project and compile correctly.
All necessary system libraries are linked such as QuartzCore and CoreGraphics?
Libraries set see in Samples of Three20: TTCatalog.
精彩评论