Impossible to build Xcode project : Undefined symbols but no error on any log

Hello,

I know this a common symptom when using Prime31 plugins but I already went through most of the posts and threads on the subject without finding the solution so I think it’s a new problem.
I can’t build the generated Xcode project of my Unity project, with the same errors as mentioned everywhere :

Undefined symbols for architecture armv7:
  "__storeKitValidateAutoRenewableReceipt", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__storeKitRestoreCompletedTransactions", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__storeKitPurchaseProduct", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__storeKitFinishPendingTransactions", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__storeKitCanMakePayments", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurrySetSessionReportsOnCloseEnabled", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__storeKitGetAllSavedTransactions", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurrySetUserId", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryAdsSetUserCookies", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurrySetGender", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__storeKitRequestProductData", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryLogEventWithParameters", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryIsAdAvailableForSpace", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryDisplayAdForSpace", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryFetchAdForSpace", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryAdsInitialize", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurrySetSessionReportsOnPauseEnabled", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__storeKitValidateReceipt", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryFetchAndDisplayAdForSpace", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryLogEvent", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryStartSession", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurrySetAge", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryEndTimedEvent", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryAdsClearKeywords", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__storeKitFinishPendingTransaction", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryRemoveAdFromSpace", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryAdsClearUserCookies", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
  "__flurryAdsSetKeywords", referenced from:
      RegisterMonoModules() in RegisterMonoModules.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

I use 2 Pirme31 plugins, StoreKit and Flurry, and both fail to postprocess. The following error is visible in the Prime31 console log :

04/09/13 10:44:42,741 Prime31: Processing all folders
04/09/13 10:44:42,742 Prime31: --- About to kick off the Runner for Flurry ---
04/09/13 10:44:42,756 Prime31: fetching build phases...
04/09/13 10:44:42,897 Prime31: handling plists
04/09/13 10:44:43,102 Prime31: runner failed with error: 'NoneType' object has no attribute 'groups'
04/09/13 10:44:43,102 Prime31: --- Finished Flurry ---
04/09/13 10:44:43,102 Prime31: --- About to kick off the Runner for Prime31Shared ---
04/09/13 10:44:43,114 Prime31: fetching build phases...
04/09/13 10:44:43,114 Prime31: handling plists
04/09/13 10:44:43,137 Prime31: runner failed with error: 'NoneType' object has no attribute 'groups'
04/09/13 10:44:43,138 Prime31: --- Finished Prime31Shared ---
04/09/13 10:44:43,138 Prime31: --- About to kick off the Runner for StoreKit ---
04/09/13 10:44:43,157 Prime31: fetching build phases...
04/09/13 10:44:43,158 Prime31: handling plists
04/09/13 10:44:43,159 Prime31: runner failed with error: 'NoneType' object has no attribute 'groups'
04/09/13 10:44:43,160 Prime31: --- Finished StoreKit ---

As you can see, the same error occurs 3 time (for the 2 plugins and the shared libraries) : ‘NoneType’ object has no attribute ‘groups’ .

I don’t understand what that is. All my plugins are up to date, I already have tried to uninstall them and reimport them without success.

I use an other plugin (not by Prime31) : the Playhaven Unity Plugin. It triggered some incompatibilities that I fixed by disabling its postprocessor so I don’t think it’s the cause of the problem any more.

Any idea ? Do you need more informations on the problem ?

Thanks !

Any luck figuring this out? Just ran into it this morning, still digging into it, hopefully we can figure this out and post solution here…

Just wanted to confirm the fix posted here worked: Fixes Facebook's post build system to make it compatible with ours · GitHub

to save the link jump:

Open the FacebookPostProcess.cs file and find the following line:

[PostProcessBuild]

Change the line to be:

[PostProcessBuild( 999 )]