这是我尝试运行项目时遇到的错误输出。
Undefined symbols for architecture i386:
"_CATransform3DMakeScale", referenced from:
-[AMSlideMenuMainViewController viewWillAppear:] in AMSlideMenuMainViewController.o
___54-[AMSlideMenuMainViewController openLeftMenuAnimated:]_block_invoke in AMSlideMenuMainViewController.o
___55-[AMSlideMenuMainViewController openRightMenuAnimated:]_block_invoke in AMSlideMenuMainViewController.o
___55-[AMSlideMenuMainViewController closeLeftMenuAnimated:]_block_invoke in AMSlideMenuMainViewController.o
___56-[AMSlideMenuMainViewController closeRightMenuAnimated:]_block_invoke in AMSlideMenuMainViewController.o
-[AMSlideMenuMainViewController configure3DTransformForMenu:panningView:] in AMSlideMenuMainViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
enter code here
这是什么意思,我怎么能摆脱它? 谢谢你的帮助。
答案 0 :(得分:0)
XCode警告您在自定义类或链接框架中找不到在其他类中调用的类。
根据经验,每次在项目中包含自定义控件或模块时,请仔细检查是否包含所有依赖项。
因此,在您的情况下,AMSlideMenuMainViewController
正在从CoreAnimation的框架调用CATransform3DMakeScale
(从CA
前缀推导出来),该内容包含在 QuartzCore
,但它尚未包含在您的项目配置中。
解决此问题的一种方法是在摘要选项卡中单击项目文件,然后将 QuartzCore 框架添加到框架列表中。
然后,仔细检查QuartzCore的标题是否在您需要的地方导入。
对于你,我猜在AMSlideMenuMainViewController
:
#import <QuartzCore/QuartzCore.h> //At the top of your file
然后,清理并构建它应该没问题!