今天在使用Xcode的使用,向工程中拖入一个C++的类文件(如一个a.cpp和一个.h),当调用C++的方法的时候产生了这样的错误:
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
这个错误是有Xcode本身的bug造成的,尽管你已经把类文件拖入工程,但Xcode没有去编译它,因此造成了这样的错误。
解决办法:点击工程->Build Phases->Compile sources,点击+,手动把a.cpp加入工程,这样就OK了
PS:这个错误和文件类型没有关系,也就是说比如你拖入一张png的图片,也可能没有添加成功,那么你可以点击工程->Build Phases->Copy Bundle Resources,点击+,手动把图片加入工程。