Undefined symbols for architecture i386/armv7 [cocoapods]

2.9k views Asked by At

After installing a custom pod with $ pod install command, I can't build the project because there are some errors like below (on my Xcode the error is about armv7, on an another Xcode, the error is about i386 architecture):

Undefined symbols for architecture armv7:
  "_generateCombMatrix", referenced from:
      -[className method:] in libPods-Bot-betting-core.a(ClassName)
  "_debugLog", referenced from:
  -[ClassName Method:] in libPods-Bot-betting-core.a(className.o)
  -[ClassName method] in libPods-Bot-betting-core.a(className.o)
  -[className method] in libPods-Bot-betting-core.a(className.o)
  -[className method:] in libPods-Bot-betting-core.a(className.o)
  -[className method:] in libPods-Bot-betting-core.a(className.o)
  -[className method] in libPods-Bot-betting-core.a(className.o)
  -[className method] in libPods-Bot-betting-core.a(className.o)
  -[className method] in libPods-Bot-betting-core.a(className.o)
  ...
  "_SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO", referenced from:
  -[className init] in libPods-Bot-betting-core.a(className.o)

Files mentioned in the error are in the project Pods and the libPods.a library is correctly linked to the project. This is the .xconfig file on debug (on release is the same):

GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/betting-core"
OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/betting-core"
OTHER_LDFLAGS = -ObjC -l"Pods-Bot-betting-core"
OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)
PODS_ROOT = ${SRCROOT}/Pods

The library support the architecture as you can see in the screen below: supported architecture

2

There are 2 answers

0
Kai On

Had a similar problem today. I was able to resolve the issue by deleting all derived data: Windows -> Projects -> Select your workspace -> click "Delete..." next to "Derived Data" on the right side.

0
Peter Lapisu On

This did it for me

Make sure your Project targets have $(inherited) present in the Other Linker Flags in Build Settings.