Elixir CRC will not compile on MAC OS - erlang

My elixir project indirectly uses crc which has NIFs. They won't compile. It look like the linked does not see the libraries.
rtp_to_hls ●  rm -rf deps/ _build/ && mix deps.get && mix compile
==> crc
C checksum_xor.c
C crc_8.c
C crc_algorithm.c
C crc_model.c
C crc_nif.c
C crc_resource.c
C xnif_slice.c
LD crc_nif.so
Undefined symbols for architecture x86_64:
"_enif_alloc", referenced from:
_crc_model_load in crc_model.o
_kh_resize_crc_stubs in crc_model.o
_kh_resize_crc_models in crc_model.o
_crc_nif_debug_table_1 in crc_nif.o
"_enif_alloc_resource", referenced from:
_crc_resource_create in crc_resource.o
_crc_resource_clone in crc_resource.o
_xnif_slice_create in xnif_slice.o
_xnif_slice_create_x in xnif_slice.o
"_enif_consume_timeslice", referenced from:
_xnif_slice_trap in xnif_slice.o
"_enif_free", referenced from:
_crc_model_load in crc_model.o
_crc_model_unload in crc_model.o
_kh_resize_crc_stubs in crc_model.o
_kh_resize_crc_models in crc_model.o
_crc_nif_debug_table_1 in crc_nif.o
"_enif_get_map_size", referenced from:
_crc_init in crc_nif.o
_crc_init_map_extend in crc_nif.o
"_enif_get_map_value", referenced from:
_crc_init in crc_nif.o
_crc_init_map_extend in crc_nif.o
"_enif_get_resource", referenced from:
_crc_resource_get in crc_resource.o
_xnif_slice_trap in xnif_slice.o
"_enif_get_tuple", referenced from:
_crc_init_tuple in crc_nif.o
"_enif_get_uint", referenced from:
_crc_nif_checksum_xor_1_work in checksum_xor.o
_crc_nif_checksum_xor_1_done in checksum_xor.o
_crc_nif_crc_8_2 in crc_8.o
_crc_nif_crc_8_init_1 in crc_8.o
_crc_nif_crc_8_update_2 in crc_8.o
_crc_nif_crc_8_final_1 in crc_8.o
_crc_nif_crc_8_2_work in crc_8.o
...
"_enif_get_ulong", referenced from:
_crc_init_tuple in crc_nif.o
"_enif_inspect_binary", referenced from:
_crc_nif_checksum_xor_1 in checksum_xor.o
_crc_nif_checksum_xor_1_work in checksum_xor.o
_crc_nif_crc_8_2 in crc_8.o
_crc_nif_crc_8_update_2 in crc_8.o
_crc_nif_crc_8_2_work in crc_8.o
_crc_nif_crc_8_update_2_work in crc_8.o
"_enif_inspect_iolist_as_binary", referenced from:
_crc_nif_crc_fast_2 in crc_nif.o
_crc_nif_crc_fast_update_2 in crc_nif.o
_crc_nif_crc_slow_2 in crc_nif.o
_crc_nif_crc_slow_update_2 in crc_nif.o
_crc_nif_crc_fast_2_work in crc_nif.o
_crc_nif_crc_fast_update_2_work in crc_nif.o
_crc_nif_crc_slow_2_work in crc_nif.o
...
"_enif_is_atom", referenced from:
_crc_init in crc_nif.o
"_enif_is_map", referenced from:
_crc_init in crc_nif.o
"_enif_is_ref", referenced from:
_crc_init in crc_nif.o
"_enif_is_tuple", referenced from:
_crc_init in crc_nif.o
"_enif_keep_resource", referenced from:
_crc_resource_create in crc_resource.o
_crc_resource_clone in crc_resource.o
"_enif_make_atom", referenced from:
_crc_model_load in crc_model.o
_crc_model_list in crc_model.o
_crc_nif_make_atoms in crc_nif.o
"_enif_make_badarg", referenced from:
_crc_nif_checksum_xor_1 in checksum_xor.o
_crc_nif_checksum_xor_1_done in checksum_xor.o
_crc_nif_crc_8_2 in crc_8.o
_crc_nif_crc_8_init_1 in crc_8.o
_crc_nif_crc_8_update_2 in crc_8.o
_crc_nif_crc_8_final_1 in crc_8.o
_crc_nif_crc_8_2_done in crc_8.o
...
"_enif_make_list_from_array", referenced from:
_crc_nif_debug_table_1 in crc_nif.o
"_enif_make_map_put", referenced from:
_crc_model_list in crc_model.o
_crc_nif_crc_info_1 in crc_nif.o
"_enif_make_new_binary", referenced from:
_crc_model_list in crc_model.o
_crc_nif_crc_info_1 in crc_nif.o
"_enif_make_new_map", referenced from:
_crc_model_list in crc_model.o
_crc_nif_crc_info_1 in crc_nif.o
"_enif_make_resource", referenced from:
_crc_nif_crc_fast_2 in crc_nif.o
_crc_nif_crc_fast_init_1 in crc_nif.o
_crc_nif_crc_fast_update_2 in crc_nif.o
_crc_nif_crc_slow_2 in crc_nif.o
_crc_nif_crc_slow_init_1 in crc_nif.o
_crc_nif_crc_slow_update_2 in crc_nif.o
_xnif_slice_schedule in xnif_slice.o
...
"_enif_make_tuple", referenced from:
_crc_nif_debug_table_1 in crc_nif.o
_crc_init in crc_nif.o
_crc_init_map_extend in crc_nif.o
"_enif_make_uint", referenced from:
_crc_nif_checksum_xor_1 in checksum_xor.o
_crc_nif_checksum_xor_1_work in checksum_xor.o
_crc_nif_checksum_xor_1_done in checksum_xor.o
_crc_nif_crc_8_2 in crc_8.o
_crc_nif_crc_8_init_1 in crc_8.o
_crc_nif_crc_8_update_2 in crc_8.o
_crc_nif_crc_8_final_1 in crc_8.o
...
"_enif_make_ulong", referenced from:
_crc_nif_debug_table_1 in crc_nif.o
_crc_nif_crc_fast_2 in crc_nif.o
_crc_nif_crc_fast_final_1 in crc_nif.o
_crc_nif_crc_slow_2 in crc_nif.o
_crc_nif_crc_slow_final_1 in crc_nif.o
_crc_nif_crc_info_1 in crc_nif.o
_crc_nif_crc_residue_1 in crc_nif.o
...
"_enif_monotonic_time", referenced from:
_xnif_slice_trap in xnif_slice.o
"_enif_open_resource_type", referenced from:
_crc_resource_load in crc_resource.o
_crc_resource_upgrade in crc_resource.o
_xnif_slice_load in xnif_slice.o
_xnif_slice_upgrade in xnif_slice.o
"_enif_realloc", referenced from:
_kh_resize_crc_stubs in crc_model.o
_kh_resize_crc_models in crc_model.o
"_enif_release_resource", referenced from:
_crc_nif_crc_fast_2 in crc_nif.o
_crc_nif_crc_fast_init_1 in crc_nif.o
_crc_nif_crc_fast_update_2 in crc_nif.o
_crc_nif_crc_slow_2 in crc_nif.o
_crc_nif_crc_slow_init_1 in crc_nif.o
_crc_nif_crc_slow_update_2 in crc_nif.o
_crc_nif_crc_residue_1 in crc_nif.o
...
"_enif_schedule_nif", referenced from:
_xnif_slice_schedule in xnif_slice.o
_xnif_slice_trap in xnif_slice.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [/Users/hajtojakub/Projects/membrane-demo/rtp_to_hls/_build/dev/lib/crc/priv/crc_nif.so] Error 1
could not compile dependency :crc, "mix compile" failed. You can recompile this dependency with "mix deps.compile crc", update it with "mix deps.update crc" or clean it with "mix deps.clean crc"
==> membrane_demo_rtp_to_hls
** (Mix) Could not compile with "make" (exit status: 2).
You need to have gcc and make installed. Try running the
commands "gcc --version" and / or "make --version". If these programs
are not installed, you will be prompted to install them.
I proceeded to check the env:
  rtp_to_hls ●  gcc --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/4.2.1
Apple clang version 11.0.3 (clang-1103.0.32.62)
Target: x86_64-apple-darwin19.5.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
rtp_to_hls ●  make --version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for i386-apple-darwin11.3.0
This is most likely configuration issue. I will post minimal reproducible project though

You need to install erlang development libraries, where this _enif_*** family of functions is declared.
On Debian Linux:
through Erlang Solutions — preferrable
using distro repo: sudo apt install erlang-dev
For MacOS, Erlang Solutions provide the ancient OTP version 19.3 only, I have no idea whether brew provides the latest OTP. If it does, do brew install erlang-r23-dev or like. If it does not, you are probably in a position to compile erlang yourself.
NB please refer to the very valuable comment below to see how to teach MacOS there is dev version already installed.

Related

vision-camera-code-scanner Undefined symbols for architecture x86_64 react native

I am getting a build error when using the vision-camera-code-scanner package for my react native project.
The short hand error is:
Undefined symbols for architecture x86_64
The full error is the following:
ld: warning: ignoring file /XXXXXXXXXXXXXXXXXXX/Build/Products/Debug-iphonesimulator/vision-camera-code-scanner/libvision-camera-code-scanner.a, building for iOS Simulator-x86_64 but attempting to link with file built for iOS Simulator-arm64
Undefined symbols for architecture x86_64:
Undefined symbols for architecture x86_64:
"_GPBClearOneof", referenced from:
_MLKITx_EPTFlagValue_ClearValueOneOfCase in MLKitCommon(FlagValues.pbobjc.o)
_MLKITx_PHENORegistrationInfo_ClearPackageVersionOneOfCase in MLKitCommon(RegistrationInfo.pbobjc.o)
_MLKITx_PHENORegistrationInfo_ClearApplicationInfoOneOfCase in MLKitCommon(RegistrationInfo.pbobjc.o)
_MLKITx_CLCCCounter_ClearCounterIdOneOfCase in MLKitCommon(Counters.pbobjc.o)
"_GULLogBasic", referenced from:
_MLKLog in MLKitCommon(MLKLogger.o)
"_OBJC_CLASS_$_GDTCORTransport", referenced from:
objc-class-ref in MLKitCommon(MLKFirelogTransport.o)
"_OBJC_CLASS_$_GPBCodedOutputStream", referenced from:
objc-class-ref in MLKitCommon(CCTLogOutputStream.o)
"_OBJC_CLASS_$_GPBDescriptor", referenced from:
objc-class-ref in MLKitCommon(Experiments.pbobjc.o)
objc-class-ref in MLKitCommon(Metalog.pbobjc.o)
objc-class-ref in MLKitCommon(FlatFile.pbobjc.o)
objc-class-ref in MLKitCommon(Clientanalytics.pbobjc.o)
objc-class-ref in MLKitCommon(FirebaseMlSdk.pbobjc.o)
objc-class-ref in MLKitCommon(UploaderState.pbobjc.o)
objc-class-ref in MLKitCommon(DeviceExperimentIds.pbobjc.o)
...
"_OBJC_CLASS_$_GPBEnumArray", referenced from:
objc-class-ref in MLKitBarcodeScanning
objc-class-ref in MLKitVision(GMVLogger.o)
"_OBJC_CLASS_$_GPBEnumDescriptor", referenced from:
objc-class-ref in MLKitCommon(Experiments.pbobjc.o)
objc-class-ref in MLKitCommon(FlatFile.pbobjc.o)
objc-class-ref in MLKitCommon(Clientanalytics.pbobjc.o)
objc-class-ref in MLKitCommon(FirebaseMlSdk.pbobjc.o)
objc-class-ref in MLKitCommon(Barhopper.pbobjc.o)
objc-class-ref in MLKitCommon(IosAccessibilityState.pbobjc.o)
objc-class-ref in MLKitCommon(PhenotypeLog.pbobjc.o)
...
"_OBJC_CLASS_$_GPBFileDescriptor", referenced from:
objc-class-ref in MLKitCommon(Experiments.pbobjc.o)
objc-class-ref in MLKitCommon(Metalog.pbobjc.o)
objc-class-ref in MLKitCommon(FlatFile.pbobjc.o)
objc-class-ref in MLKitCommon(Clientanalytics.pbobjc.o)
objc-class-ref in MLKitCommon(FirebaseMlSdk.pbobjc.o)
objc-class-ref in MLKitCommon(UploaderState.pbobjc.o)
objc-class-ref in MLKitCommon(DeviceExperimentIds.pbobjc.o)
...
"_OBJC_CLASS_$_GPBInt32Array", referenced from:
objc-class-ref in MLKitCommon(CCTClearcutLogEvent.o)
"_OBJC_CLASS_$_GPBMessage", referenced from:
_OBJC_CLASS_$_MLKITx_EXHParam in MLKitCommon(Experiments.pbobjc.o)
_OBJC_CLASS_$_MLKITx_EXHParam_ExtensionValue in MLKitCommon(Experiments.pbobjc.o)
_OBJC_CLASS_$_MLKITx_EXHDeviceAccount in MLKitCommon(Experiments.pbobjc.o)
_OBJC_CLASS_$_MLKITx_EXHScope in MLKitCommon(Experiments.pbobjc.o)
_OBJC_CLASS_$_MLKITx_EXHParamPartition in MLKitCommon(Experiments.pbobjc.o)
_OBJC_CLASS_$_MLKITx_EXHCrossAppDescriptor in MLKitCommon(Experiments.pbobjc.o)
_OBJC_CLASS_$_MLKITx_EXHConfigurationTier in MLKitCommon(Experiments.pbobjc.o)
...
"_OBJC_CLASS_$_GPBRootObject", referenced from:
_OBJC_CLASS_$_MLKITx_EXHExperimentsRoot in MLKitCommon(Experiments.pbobjc.o)
_OBJC_CLASS_$_MLKITx_CADPMetalogRoot in MLKitCommon(Metalog.pbobjc.o)
_OBJC_CLASS_$_MLKITx_EPIFlatFileRoot in MLKitCommon(FlatFile.pbobjc.o)
_OBJC_CLASS_$_MLKITx_CADPClientanalyticsRoot in MLKitCommon(Clientanalytics.pbobjc.o)
_OBJC_CLASS_$_MLKITx_FBMLFirebaseMlSdkRoot in MLKitCommon(FirebaseMlSdk.pbobjc.o)
_OBJC_CLASS_$_MLKITx_CCTUploaderStateRoot in MLKitCommon(UploaderState.pbobjc.o)
_OBJC_CLASS_$_MLKITx_EXHDeviceExperimentIdsRoot in MLKitCommon(DeviceExperimentIds.pbobjc.o)
...
"_OBJC_CLASS_$_GTMLogMininumLevelFilter", referenced from:
objc-class-ref in MLKitCommon(GIPLoggingReroutingGTMLogger.o)
"_OBJC_CLASS_$_GTMLogger", referenced from:
objc-class-ref in MLKitCommon(PHTInternalHeterodyneSyncer.o)
objc-class-ref in MLKitCommon(PHTHeterodyneSyncer.o)
objc-class-ref in MLKitCommon(GIPPseudonymousIDStore.o)
objc-class-ref in MLKitCommon(CCTLogOutputStream.o)
objc-class-ref in MLKitCommon(CCTClearcutUploader.o)
objc-class-ref in MLKitCommon(CCTClearcutMetaLogger.o)
objc-class-ref in MLKitCommon(CCTClearcutFileUtility.o)
...
"_OBJC_CLASS_$_GTMSessionCookieStorage", referenced from:
objc-class-ref in MLKitCommon(CCTClearcutUploader.o)
"_OBJC_CLASS_$_GTMSessionFetcher", referenced from:
objc-class-ref in MLKitCommon(CCTClearcutUploader.o)
"_OBJC_CLASS_$_GTMSessionFetcherService", referenced from:
objc-class-ref in MLKitCommon(PHTFlatFilePhenotype.o)
objc-class-ref in MLKitCommon(MLKModelDownloader.o)
objc-class-ref in MLKitVision(GMVCloudVisionClient.o)
"_OBJC_CLASS_$_GULCCComponent", referenced from:
objc-class-ref in MLKitCommon(MLKCustomModelManager.o)
"_OBJC_CLASS_$_GULCCComponentContainer", referenced from:
objc-class-ref in MLKitCommon(MLKContext.o)
objc-class-ref in MLKitCommon(MLKCustomModelManager.o)
"_OBJC_CLASS_$_GULCCComponentType", referenced from:
objc-class-ref in MLKitCommon(MLKModelManager.o)
objc-class-ref in MLKitCommon(MLKContext.o)
objc-class-ref in MLKitCommon(MLKCustomModelManager.o)
"_OBJC_CLASS_$_GULUserDefaults", referenced from:
objc-class-ref in MLKitCommon(MLKModelPreferencesManager.o)
objc-class-ref in MLKitCommon(MLKAnalyticsLogger.o)
objc-class-ref in MLKitCommon(MLKModelDownloader.o)
"_OBJC_CLASS_$_RCTBridge", referenced from:
objc-class-ref in AppDelegate.o
"_OBJC_CLASS_$_RCTBundleURLProvider", referenced from:
objc-class-ref in AppDelegate.o
"_OBJC_METACLASS_$_GPBMessage", referenced from:
_OBJC_METACLASS_$_MLKITx_EXHParam in MLKitCommon(Experiments.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_EXHParam_ExtensionValue in MLKitCommon(Experiments.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_EXHDeviceAccount in MLKitCommon(Experiments.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_EXHScope in MLKitCommon(Experiments.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_EXHParamPartition in MLKitCommon(Experiments.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_EXHCrossAppDescriptor in MLKitCommon(Experiments.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_EXHConfigurationTier in MLKitCommon(Experiments.pbobjc.o)
...
"_OBJC_METACLASS_$_GPBRootObject", referenced from:
_OBJC_METACLASS_$_MLKITx_EXHExperimentsRoot in MLKitCommon(Experiments.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_CADPMetalogRoot in MLKitCommon(Metalog.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_EPIFlatFileRoot in MLKitCommon(FlatFile.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_CADPClientanalyticsRoot in MLKitCommon(Clientanalytics.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_FBMLFirebaseMlSdkRoot in MLKitCommon(FirebaseMlSdk.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_CCTUploaderStateRoot in MLKitCommon(UploaderState.pbobjc.o)
_OBJC_METACLASS_$_MLKITx_EXHDeviceExperimentIdsRoot in MLKitCommon(DeviceExperimentIds.pbobjc.o)
...
"_OBJC_METACLASS_$_GTMLogger", referenced from:
_OBJC_METACLASS_$_MLKITx_GIPLoggingReroutingGTMLogger in MLKitCommon(GIPLoggingReroutingGTMLogger.o)
"_RCTAppSetupDefaultRootView", referenced from:
-[AppDelegate application:didFinishLaunchingWithOptions:] in AppDelegate.o
"_RCTAppSetupPrepareApp", referenced from:
-[AppDelegate application:didFinishLaunchingWithOptions:] in AppDelegate.o
"_kGTMSessionFetcherStatusDomain", referenced from:
___91-[MLKITx_PHTInternalHeterodyneSyncer syncHoldingLockWithSyncedScopes:fetchReason:callback:]_block_invoke in MLKitCommon(PHTInternalHeterodyneSyncer.o)
___150-[MLKITx_PHTHeterodyneSyncer batchSyncWithAccounts:syncedScopes:fetchReason:throttlingCache:heterodyneSyncInfo:accountToAuthToken:lastError:callback:]_block_invoke in MLKitCommon(PHTHeterodyneSyncer.o)
___69-[MLKModelDownloader beginModelDownloadWithURL:modelInfo:conditions:]_block_invoke.285 in MLKitCommon(MLKModelDownloader.o)
___63-[MLKITx_GMVCloudVisionClient initWithCloudUri:apiKey:options:]_block_invoke in MLKitVision(GMVCloudVisionClient.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I have tried to fix the issue by running: pod deintegrate && pod cache clean --all and then pod install in the ios directory as per the following similar question.
Sadly this didnt fix the issue i also tried the steps suggested in the following thread: namely excluding the target arm64. But this also didnt fix the error.
I also read the following on this github thread:
It's related to the fact that Google MLKit Team does not ship ARM simulator binaries and we can't compile ourselves because the source code is not public
So now i am a bit lost what to do.
Any help or suggestions greatly appreciated.
Working on mac book pro M1 14 inch
running latest version of react native
If additional information is needed please let me know so i can add it to the question.
You have to exclude arm64 from your pod file by following these steps:
Add this to your pod file:
post_install do |installer|
react_native_post_install(installer)
installer.pods_project.build_configurations.each do |config|
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
end
end
Make sure to use this flipper version in your pod file:
use_flipper!({'Flipper' => '0.79.0'})
Then, clean your pods and reinstalled them:
rm -rf ~/Library/Caches/CocoaPods && rm -rf ./ios/Pods && rm -rf ~/Library/Developer/Xcode/DerivedData/* && pod deintegrate && pod setup && npx pod-install
As per my findings on this topic, Google MLKit does not support arm64 yet (found it when trying an option to import it through SPM on an iOS project). The only way to build this on an M1 machine is to run the entire project on x86_64 compatiblity using Rosetta 2. However, running Xcode in compatibility mode is not a supported configuration by Apple, so there could be other errors with this choice.

Undefined symbols for architecture arm64, it seems just randomly happened to some third party framework using cocoapods

What happened
I used Cocoapods to manage some third-party frameworks
I used some private spec repos
More than one private repos have dependency on same third-party pods
After a modification of dependency structure,I build my workspace, it shows these errors:
Undefined symbols for architecture arm64:
"_OBJC_METACLASS_$_UIView", referenced from:
_OBJC_METACLASS_$_iCarousel in iCarousel.o
"_OBJC_CLASS_$_UIButton", referenced from:
objc-class-ref in iCarousel.o
"_OBJC_CLASS_$_UIScrollView", referenced from:
objc-class-ref in iCarousel.o
"_OBJC_CLASS_$_UIScreen", referenced from:
objc-class-ref in iCarousel.o
"_OBJC_CLASS_$_UITapGestureRecognizer", referenced from:
objc-class-ref in iCarousel.o
"_OBJC_CLASS_$_UIView", referenced from:
objc-class-ref in iCarousel.o
_OBJC_CLASS_$_iCarousel in iCarousel.o
"_OBJC_CLASS_$_UIBarButtonItem", referenced from:
objc-class-ref in iCarousel.o
"_UITrackingRunLoopMode", referenced from:
-[iCarousel startAnimation] in iCarousel.o
"_CGSizeZero", referenced from:
-[iCarousel setUp] in iCarousel.o
"_OBJC_CLASS_$_UIPanGestureRecognizer", referenced from:
objc-class-ref in iCarousel.o
"_UIAccessibilityTraitAllowsDirectInteraction", referenced from:
-[iCarousel setUp] in iCarousel.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
What I've done to try to solve this problem?(none of them works)
Deleted Xcode caches by rm -rf ~/Library/Developer/Xcode/DerivedData/
Deleted Cocoapods caches by $ rm -rf "${HOME}/Library/Caches/CocoaPods" $rm -rf "pwd/Pods/" $pod update
Update the Xcode version to 12.0.1
Oh no, same errors!
What I've done next...
I decided to go the hard way, so I add those things to my Podfile:
if target.name == "iCarousel"
config.build_settings['OTHER_LDFLAGS'] ||= ['$(inherited)']
config.build_settings['OTHER_LDFLAGS'] << '-framework "UIKit"'
config.build_settings['OTHER_LDFLAGS'] << '-framework "CoreGraphics"'
end
Then, pod install
Build my project...
Good news! nothing to do with iCarousel! Bad news, same old errors happened to another pod: PomeloPush
Undefined symbols for architecture arm64:
"_SCNetworkReachabilitySetDispatchQueue", referenced from:
-[PomeloReachability startNotifier] in PomeloReachability.o
-[PomeloReachability stopNotifier] in PomeloReachability.o
"_SCError", referenced from:
-[PomeloReachability startNotifier] in PomeloReachability.o
"_SCErrorString", referenced from:
-[PomeloReachability startNotifier] in PomeloReachability.o
"_SCNetworkReachabilityGetFlags", referenced from:
-[PomeloReachability isReachable] in PomeloReachability.o
-[PomeloReachability isReachableViaWWAN] in PomeloReachability.o
-[PomeloReachability isReachableViaWiFi] in PomeloReachability.o
-[PomeloReachability connectionRequired] in PomeloReachability.o
-[PomeloReachability isConnectionOnDemand] in PomeloReachability.o
-[PomeloReachability isInterventionRequired] in PomeloReachability.o
-[PomeloReachability reachabilityFlags] in PomeloReachability.o
...
"_SCNetworkReachabilitySetCallback", referenced from:
-[PomeloReachability startNotifier] in PomeloReachability.o
-[PomeloReachability stopNotifier] in PomeloReachability.o
"_SCNetworkReachabilityCreateWithAddress", referenced from:
+[PomeloReachability reachabilityWithAddress:] in PomeloReachability.o
"_CFHostStartInfoResolution", referenced from:
+[PomeloHostRequest nslookup:] in PomeloHostRequest.o
"_OBJC_CLASS_$_UIDevice", referenced from:
objc-class-ref in PomeloClient.o
"_SCNetworkReachabilityCreateWithName", referenced from:
+[PomeloReachability reachabilityWithHostname:] in PomeloReachability.o
"_CFHostCreateWithName", referenced from:
+[PomeloHostRequest nslookup:] in PomeloHostRequest.o
"_CFHostGetAddressing", referenced from:
+[PomeloHostRequest nslookup:] in PomeloHostRequest.o
"_OBJC_CLASS_$_UIPasteboard", referenced from:
objc-class-ref in Pomelo_OpenUDID.o
"_UIApplicationDidEnterBackgroundNotification", referenced from:
-[PomeloClient addNotification] in PomeloClient.o
"_UIApplicationWillEnterForegroundNotification", referenced from:
-[PomeloClient addNotification] in PomeloClient.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Then I added some similar code in Podfile
Then pod install, build
Oh, a similar error happened to another pod:
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_UIViewController", referenced from:
__OBJC_$_CATEGORY_UIViewController_$_KeyboardAnimation in UIViewController+KeyboardAnimation.o
"_UIKeyboardAnimationDurationUserInfoKey", referenced from:
-[UIViewController(KeyboardAnimation) getDurationFromNotification:] in UIViewController+KeyboardAnimation.o
"_UIKeyboardAnimationCurveUserInfoKey", referenced from:
-[UIViewController(KeyboardAnimation) getAnimationCurveFromNotification:] in UIViewController+KeyboardAnimation.o
"_UIKeyboardFrameEndUserInfoKey", referenced from:
-[UIViewController(KeyboardAnimation) getKeyboardRectFromNotification:] in UIViewController+KeyboardAnimation.o
"_UIKeyboardWillChangeFrameNotification", referenced from:
-[UIViewController(KeyboardAnimation) an_subscribeKeyboardFrameChangesWithAnimations:] in UIViewController+KeyboardAnimation.o
-[UIViewController(KeyboardAnimation) an_unsubscribeKeyboardFrameChanges] in UIViewController+KeyboardAnimation.o
"_UIKeyboardWillShowNotification", referenced from:
-[UIViewController(KeyboardAnimation) an_subscribeKeyboardWithBeforeAnimations:animations:completion:] in UIViewController+KeyboardAnimation.o
-[UIViewController(KeyboardAnimation) an_unsubscribeKeyboard] in UIViewController+KeyboardAnimation.o
"_OBJC_CLASS_$_UIView", referenced from:
objc-class-ref in UIViewController+KeyboardAnimation.o
"_UIKeyboardWillHideNotification", referenced from:
-[UIViewController(KeyboardAnimation) an_subscribeKeyboardWithBeforeAnimations:animations:completion:] in UIViewController+KeyboardAnimation.o
-[UIViewController(KeyboardAnimation) an_unsubscribeKeyboard] in UIViewController+KeyboardAnimation.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
for now, it had happened on pop, AFNetworking, SDWebImage, iCarousel, MJRefresh, and so on...
Any suggestions could help would be greatly appreciated!! I've stuck on this for a week...
By looking out your observation you can try out the following suggestion:
Check if your cocoapods are updated to latest version.
remove all pods using pod deintegrate.
check the dependencies of pods and try to install one by one. pod install.
also check the support of libraries to your swift version.
if both libraries have same code or extension it will give you the error.
Also could be helpful to remove all pods first:
pod deintegrate
then
pod install

Libraries required to resolve firebase-crash linker issues when added manually

Have added libs mentioned in Linking error on Firebase 3.7.0 for iOS Application but still I get below linker errors for adding firebase crash.
"_FIRLogError", referenced from:
-[FCRBreakpadController enableDebugger] in FirebaseCrash(FCRBreakpadController_bc3acad0fa3a54a5c7c331f54af621b0.o)
-[FCRBreakpadController startWithConfiguration:] in FirebaseCrash(FCRBreakpadController_bc3acad0fa3a54a5c7c331f54af621b0.o)
-[FCRBreakpadController createDirectory:] in FirebaseCrash(FCRBreakpadController_bc3acad0fa3a54a5c7c331f54af621b0.o)
+[FCRAnalytics messageDictionaryFromMessage:] in FirebaseCrash(FCRAnalytics_281d4dbe093b1d2a74ef0873d1ac6263.o)
-[FCRClient startWithConfiguration:error:] in FirebaseCrash(FCRClient_482ceec6b5943edbfb1d1dff6beb18f6.o)
-[FCRCrashDump crashInfoFromSystemMetadata:] in FirebaseCrash(FCRCrashDump_ee5f791af340383d1b426338c1150e39.o)
-[FCRUploadQueue initWithDirectory:maxSize:] in FirebaseCrash(FCRUploadQueue_2ce78e78dbb8f27676bd42e0302357a3.o)
... "_FIRLogInfo", referenced from:
-[FCRClient startWithConfiguration:error:] in FirebaseCrash(FCRClient_482ceec6b5943edbfb1d1dff6beb18f6.o)
___49-[FCRBulkUploader uploadFileFromQueue:onSuccess:]_block_invoke in
FirebaseCrash(FCRBulkUploader_af76d0815dcb863205f4ed96c30df68e.o)
"_GSDK_objc_getClass", referenced from:
_____GetFIRAnalyticsClass_block_invoke in FirebaseCrash(FCRAnalytics_281d4dbe093b1d2a74ef0873d1ac6263.o)
"_OBJC_CLASS_$_FIRApp", referenced from:
objc-class-ref in NFAppDelegate.o
objc-class-ref in FirebaseCrash(FCRClient_482ceec6b5943edbfb1d1dff6beb18f6.o)
"_OBJC_CLASS_$_FIRInstanceID", referenced from:
objc-class-ref in FirebaseCrash(FCRCrashUploader_810ae32cc5e6c7f23936333033b9ebd7.o)
"_OBJC_CLASS_$_GSDK_PBDescriptor", referenced from:
objc-class-ref in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
"_OBJC_CLASS_$_GSDK_PBGeneratedMessage", referenced from:
_OBJC_CLASS_$_FCRMSGTimestamp in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_CLASS_$_FCRMSGCrashReport in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_CLASS_$_FCRMSGDevice in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_CLASS_$_FCRMSGAndroidDevice in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_CLASS_$_FCRMSGIOSDevice in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_CLASS_$_FCRMSGApplication in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_CLASS_$_FCRMSGAndroidApplication in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
... "_OBJC_CLASS_$_GSDK_PBMutableArray", referenced from:
objc-class-ref in FirebaseCrash(FCRCrashDump_ee5f791af340383d1b426338c1150e39.o)
"_OBJC_CLASS_$_GSDK_PBRootObject", referenced from:
_OBJC_CLASS_$_FCRMSGSdkRoot in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
"_OBJC_CLASS_$_GTMLogBasicFormatter", referenced from:
objc-class-ref in FirebaseCrash(FCRSystemLogger_6532fb37dc095ffa73463b57baf5fca7.o)
"_OBJC_CLASS_$_GTMLogNoFilter", referenced from:
objc-class-ref in FirebaseCrash(FCRSystemLogger_6532fb37dc095ffa73463b57baf5fca7.o)
"_OBJC_CLASS_$_GTMLogger", referenced from:
objc-class-ref in FirebaseCrash(FCRSystemLogger_6532fb37dc095ffa73463b57baf5fca7.o)
objc-class-ref in FirebaseCrash(uploader_089041b840f448492d858d7daf481e47.o)
"_OBJC_METACLASS_$_GSDK_PBGeneratedMessage", referenced from:
_OBJC_METACLASS_$_FCRMSGTimestamp in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_METACLASS_$_FCRMSGCrashReport in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_METACLASS_$_FCRMSGDevice in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_METACLASS_$_FCRMSGAndroidDevice in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_METACLASS_$_FCRMSGIOSDevice in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_METACLASS_$_FCRMSGApplication in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
_OBJC_METACLASS_$_FCRMSGAndroidApplication in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
... "_OBJC_METACLASS_$_GSDK_PBRootObject", referenced from:
_OBJC_METACLASS_$_FCRMSGSdkRoot in FirebaseCrash(Sdk.pb_8328b2bef1af4d0941a97cc98e810c6c.o)
"_kFIRAppNameKey", referenced from:
___17+[FCRClient load]_block_invoke in FirebaseCrash(FCRClient_482ceec6b5943edbfb1d1dff6beb18f6.o)
"_kFIRAppReadyToConfigureSDKNotification", referenced from:
+[FCRClient load] in FirebaseCrash(FCRClient_482ceec6b5943edbfb1d1dff6beb18f6.o)
"_kFIRLoggerCrash", referenced from:
-[FCRBreakpadController enableDebugger] in FirebaseCrash(FCRBreakpadController_bc3acad0fa3a54a5c7c331f54af621b0.o)
-[FCRBreakpadController startWithConfiguration:] in FirebaseCrash(FCRBreakpadController_bc3acad0fa3a54a5c7c331f54af621b0.o)
-[FCRBreakpadController createDirectory:] in FirebaseCrash(FCRBreakpadController_bc3acad0fa3a54a5c7c331f54af621b0.o)
+[FCRAnalytics messageDictionaryFromMessage:] in FirebaseCrash(FCRAnalytics_281d4dbe093b1d2a74ef0873d1ac6263.o)
-[FCRClient startWithConfiguration:error:] in FirebaseCrash(FCRClient_482ceec6b5943edbfb1d1dff6beb18f6.o)
-[FCRCrashDump crashInfoFromSystemMetadata:] in FirebaseCrash(FCRCrashDump_ee5f791af340383d1b426338c1150e39.o)
___49-[FCRBulkUploader uploadFileFromQueue:onSuccess:]_block_invoke in
FirebaseCrash(FCRBulkUploader_af76d0815dcb863205f4ed96c30df68e.o)
... ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see
invocation)
Have set framework search path and library search path as below
try cocoapods manager:
pod 'Firebase', '~> 3.9'
it could simply fix all of your wrong dependcies.
https://cocoapods.org/pods/Firebase
or check readme.md file:
you have to add all these libs:
"(~> X)" below means that the SDK requires all of the frameworks from
X. You should make sure to include all of the frameworks from X when
including the SDK.
Analytics
FirebaseAnalytics.framework
FirebaseCore.framework
FirebaseInstanceID.framework
GoogleInterchangeUtilities.framework
GoogleSymbolUtilities.framework
GoogleToolboxForMac.framework
Crash (~> Analytics)
FirebaseCrash.framework

missing symbols in Gstreamer IOS tutorial

I have just downloaded the gstreamer ios binaries from https://gstreamer.freedesktop.org/data/pkg/ios/1.8.1/. and the gstreamer sdk from https://cgit.freedesktop.org/~slomo/gst-sdk-tutorials/ (which has not been updated for 7 months? -- is there a newer version)?
When I enable the following features in gst_ios_init.h, i am unable to resolve the symbols as follows. Is there a newer SDK? I don't need liveadder or fragmented or editing tools, but the ios compression support seems like it would be useful.
When I enable:
#define GST_IOS_PLUGINS_EFFECTS
I get:
Undefined symbols for architecture x86_64:
"_gst_plugin_liveadder_register", referenced from:
_gst_ios_init in gst_ios_init.o
When I enable:
#define GST_IOS_PLUGINS_CODECS
I get:
Undefined symbols for architecture x86_64:
"_gst_plugin_fragmented_register", referenced from:
_gst_ios_init in gst_ios_init.o
When I enable:
#define GST_IOS_PLUGINS_EDITING
I get:
Undefined symbols for architecture x86_64:
"_gst_plugin_gnonlin_register", referenced from:
_gst_ios_init in gst_ios_init.o
When I enable:
#define GST_IOS_PLUGINS_SYS
I get:
Undefined symbols for architecture x86_64:
"_VTCompressionSessionCompleteFrames", referenced from:
_gst_vtenc_finish in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_VTCompressionSessionCreate", referenced from:
_plugin_init in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-plugin.o)
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_VTCompressionSessionEncodeFrame", referenced from:
_gst_vtenc_handle_frame in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_VTCompressionSessionInvalidate", referenced from:
_gst_vtenc_destroy_session in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_VTCompressionSessionPrepareToEncodeFrames", referenced from:
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_VTDecompressionSessionCreate", referenced from:
_gst_vtdec_negotiate in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtdec.o)
"_VTDecompressionSessionDecodeFrame", referenced from:
_gst_vtdec_handle_frame in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtdec.o)
"_VTDecompressionSessionInvalidate", referenced from:
_gst_vtdec_invalidate_session in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtdec.o)
"_VTDecompressionSessionWaitForAsynchronousFrames", referenced from:
_gst_vtdec_push_frames_if_needed in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtdec.o)
"_VTSessionCopyProperty", referenced from:
_gst_vtenc_handle_frame in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_session_dump_property in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_VTSessionCopySupportedPropertyDictionary", referenced from:
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_VTSessionSetProperty", referenced from:
_gst_vtenc_set_property in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_session_configure_property_double in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_session_configure_property_int in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_AllowFrameReordering", referenced from:
_gst_vtenc_set_property in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_AllowTemporalCompression", referenced from:
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_AverageBitRate", referenced from:
_gst_vtenc_set_property in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_ExpectedFrameRate", referenced from:
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_MaxKeyFrameInterval", referenced from:
_gst_vtenc_set_property in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_MaxKeyFrameIntervalDuration", referenced from:
_gst_vtenc_set_property in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_NumberOfPendingFrames", referenced from:
_gst_vtenc_handle_frame in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_ProfileLevel", referenced from:
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_Quality", referenced from:
_gst_vtenc_set_quality in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTCompressionPropertyKey_RealTime", referenced from:
_gst_vtenc_set_property in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
_gst_vtenc_set_format in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
"_kVTEncodeFrameOptionKey_ForceKeyFrame", referenced from:
_gst_vtenc_init in GStreamer(libgstapplemedia_a_x86_64_-libgstapplemedia_la-vtenc.o)
Just add VideoToolBox framework to your project.
This is because your gstreamer framework installed is not the same as the tutorial. Copy according gst_ios_init.h and gst_ios_init.m to tutorial project will fix the issue

Fabric and Digits pods failing workspace in Xcode 7 and Swift 2.0

I updated to Xcode 7 and fixed the necessary code (syntax) changes for Swift 2.0. I updated my Podfile with these 2 entries:
pod 'Fabric'
pod 'Digits'
and now see many build errors (pasted below). Any ideas?
I ran sudo gem install cocoapods to update my Cocoapods, and then ran pod install and pod update in order to install 'Fabric' and 'Digits' pods.
Note: Prior to updating to Xcode 7, my project, which uses Digits, was building and working correctly!
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_FABJLObjectDeserializer", referenced from:
objc-class-ref in DigitsKit(DGTUserNetworking.o)
objc-class-ref in DigitsKit(DGTAuthNetworking.o)
"_OBJC_CLASS_$_FABJLObjectSerializer", referenced from:
objc-class-ref in DigitsKit(DGTAuthNetworking.o)
"_OBJC_CLASS_$_TFSScribe", referenced from:
objc-class-ref in DigitsKit(Digits.o)
"_OBJC_CLASS_$_TWTRAPIResponseValidator", referenced from:
objc-class-ref in DigitsKit(DGTNetworkingHelper.o)
"_OBJC_CLASS_$_TWTRAuthConfig", referenced from:
objc-class-ref in DigitsKit(Digits.o)
"_OBJC_CLASS_$_TWTRColorUtil", referenced from:
objc-class-ref in DigitsKit(DGTAppearance.o)
"_OBJC_CLASS_$_TWTRCoreLanguage", referenced from:
objc-class-ref in DigitsKit(DGTAuthNetworking.o)
"_OBJC_CLASS_$_TWTRDictUtil", referenced from:
objc-class-ref in DigitsKit(DGTLogInAuthConfiguration.o)
objc-class-ref in DigitsKit(DGTDeviceRegisterConfiguration.o)
"_OBJC_CLASS_$_TWTRGuestSessionRefreshStrategy", referenced from:
objc-class-ref in DigitsKit(Digits.o)
"_OBJC_CLASS_$_TWTRKeychainWrapper", referenced from:
objc-class-ref in DigitsKit(DGTSessionMigrator.o)
"_OBJC_CLASS_$_TWTRNetworkingPipeline", referenced from:
objc-class-ref in DigitsKit(DGTNetworkingHelper.o)
"_OBJC_CLASS_$_TWTRResourcesUtil", referenced from:
objc-class-ref in DigitsKit(DGTURLSessionConfig.o)
objc-class-ref in DigitsKit(DGTResourcesUtil.o)
"_OBJC_CLASS_$_TWTRScribeClientEventNamespace", referenced from:
objc-class-ref in DigitsKit(DGTScribeEventLogger.o)
"_OBJC_CLASS_$_TWTRScribeEvent", referenced from:
objc-class-ref in DigitsKit(DGTScribeEventLogger.o)
"_OBJC_CLASS_$_TWTRScribeService", referenced from:
objc-class-ref in DigitsKit(Digits.o)
"_OBJC_CLASS_$_TWTRSessionStore", referenced from:
objc-class-ref in DigitsKit(Digits.o)
"_OBJC_CLASS_$_TWTRURLSessionDelegate", referenced from:
objc-class-ref in DigitsKit(DGTNetworkingHelper.o)
"_OBJC_CLASS_$_TWTRUserSessionVerifier", referenced from:
objc-class-ref in DigitsKit(DGTSessionVerifier.o)
"_OBJC_CLASS_$_TWTRUtils", referenced from:
objc-class-ref in DigitsKit(DGTAuthViewController.o)
objc-class-ref in DigitsKit(DGTConfirmSignUpViewController.o)
objc-class-ref in DigitsKit(DGTConfirmLogInViewController.o)
objc-class-ref in DigitsKit(DGTUploadContactsViewController.o)
objc-class-ref in DigitsKit(Digits.o)
objc-class-ref in DigitsKit(DGTConfirmViewController.o)
objc-class-ref in DigitsKit(DGTContacts.o)
...
"_OBJC_CLASS_$_TwitterNetworking", referenced from:
objc-class-ref in DigitsKit(DGTUserNetworking.o)
objc-class-ref in DigitsKit(DGTContactsNetworking.o)
objc-class-ref in DigitsKit(DGTAuthNetworking.o)
"_TWTRAPIURLWithPath", referenced from:
-[DGTUserNetworking verifyUser:completion:] in DigitsKit(DGTUserNetworking.o)
-[DGTOAuthSigning OAuthEchoHeadersToVerifyCredentialsWithParams:] in DigitsKit(DGTOAuthSigning.o)
-[DGTContactsNetworking uploadContactVCards:completion:] in DigitsKit(DGTContactsNetworking.o)
-[DGTContactsNetworking lookupContactMatchesWithCursor:completion:] in DigitsKit(DGTContactsNetworking.o)
-[DGTContactsNetworking destroyAllContactsWithCompletion:] in DigitsKit(DGTContactsNetworking.o)
-[DGTAuthNetworking registerDeviceWithPhoneNumber:withVerificationType:completion:] in DigitsKit(DGTAuthNetworking.o)
-[DGTAuthNetworking confirmAccountWithPhoneNumber:confirmationNumber:completion:] in DigitsKit(DGTAuthNetworking.o)
...
"_TWTRCoreOAuthSigningOAuthEchoHeaders", referenced from:
-[DGTOAuthSigning OAuthEchoHeadersForRequestMethod:URLString:parameters:error:] in DigitsKit(DGTOAuthSigning.o)
"_TWTRCoreVersion", referenced from:
+[Digits assertValidTwitterCoreVersion] in DigitsKit(Digits.o)
"_TWTRNetworkingErrorDomain", referenced from:
-[DGTAuthViewController startLogInProcessWithVerificationType:] in DigitsKit(DGTAuthViewController.o)
-[DGTConfirmSignUpViewController startSignUpProcess] in DigitsKit(DGTConfirmSignUpViewController.o)
-[DGTConfirmLogInViewController startLogInProcess] in DigitsKit(DGTConfirmLogInViewController.o)
-[DGTPinCodeFormViewController startVerifyPINCode] in DigitsKit(DGTPinCodeFormViewController.o)
"_TWTRNetworkingUserAgentHeaderKey", referenced from:
+[DGTURLSessionConfig defaultAdditionalHeaders] in DigitsKit(DGTURLSessionConfig.o)
"_TWTRScribeClientEventNamespaceEmptyValue", referenced from:
-[DGTScribeViewEventLogger viewDidShow] in DigitsKit(DGTScribeViewEventLogger.o)
-[DGTScribeViewEventLogger viewDidSucceed] in DigitsKit(DGTScribeViewEventLogger.o)
-[DGTScribeViewEventLogger didShowFailureView] in DigitsKit(DGTScribeViewEventLogger.o)
-[DGTScribeViewEventLogger errorDidOccurWithCode:] in DigitsKit(DGTScribeViewEventLogger.o)
+[DGTScribeViewEventLogger scribeViewNameWithScribeView:] in DigitsKit(DGTScribeViewEventLogger.o)
+[DGTScribeEventLogger digitsUniquesImpressionNamespace] in DigitsKit(DGTScribeEventLogger.o)
+[DGTScribeEventLogger digitsImpressionNamespace] in DigitsKit(DGTScribeEventLogger.o)
...
"_TWTRScribeEventImpressionClient", referenced from:
+[DGTScribeEventLogger digitsEventNamespaceWithComponent:element:action:] in DigitsKit(DGTScribeEventLogger.o)
"_TWTRScribeEventImpressionPage", referenced from:
+[DGTScribeEventLogger digitsEventNamespaceWithComponent:element:action:] in DigitsKit(DGTScribeEventLogger.o)
"_TWTRScribeEventUniquesClient", referenced from:
+[DGTScribeEventLogger digitsUniquesImpressionNamespace] in DigitsKit(DGTScribeEventLogger.o)
"_TWTRUserSessionVerifierDefaultDelay", referenced from:
-[DGTSessionVerifier startVerification] in DigitsKit(DGTSessionVerifier.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I think the problem is that you haven't included 'TwitterCore' into the pod file:
pod 'Fabric'
pod 'Digits'
pod 'TwitterCore'

Resources