ios - AWS SDK Linker Flags conflicting with imported project -
i've got app using aws sdk framework, , i'm trying import static library homemade framework, sharing code several of other projects.
the problem is: in order import static library, need add -objc
linker flag in order import library, whenever add linker flag, aws freaks out , gives me 40+ red compile errors.
i'm entirely new linker flags , library importing, don't know start. i've done research, best lead can find suggestion use -force_load
instead of -objc
, seems require manually adding every ".m" file in build phases section, , library includes hundreds of such files.
is there simpler solution problem adding every 1 of files can use -force_load
? how can awk sdk , needs of importing library play nicely together?
edit: suggestion in comments, here error i'm getting when add -objc
linker flag. without flag (and without adding static library), app compiles awsiossdkv2
framework. adding linker flag (which, understand it, needed static library, before adding library) results in this:
[code removed fit within character limit]
edit 2: based on yosuke matsuda's answer, added libsqlite3.dylib
, missing. previous errors have disappeared, have dozens (hundreds?) of "duplicate symbol" lines, ending in single red "linker command failed exit code 1" error. (i include them but, hilariously, put post @ 73,111 characters, on 30,000 character limit.)
funny thing is, seem conflicts caused requirements of frameworks (for example, awscore
in aws framework requires bolts
framework, seem conflict bunch of duplicate symbols?).
and, before, removing -objc
linker flags allows app compile , successfully.
duplicate symbol _objc_metaclass_$_podsdummy_pods_reachability in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(pods-reachability-dummy.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(pods-reachability-dummy.o) duplicate symbol _objc_class_$_podsdummy_pods_reachability in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(pods-reachability-dummy.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(pods-reachability-dummy.o) duplicate symbol _objc_ivar_$_reachability.reachabilityref in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _objc_ivar_$_reachability.reachableonwwan in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _kreachabilitychangednotification in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _objc_ivar_$_reachability.reachabilityserialqueue in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _objc_ivar_$_reachability.reachableblock in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _objc_ivar_$_reachability.unreachableblock in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _objc_ivar_$_reachability.reachabilityobject in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _objc_class_$_reachability in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _objc_metaclass_$_reachability in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(reachability.o) /users/kornferry/documents/repositories/kf4ddemo/reachability.framework/reachability(reachability.o) duplicate symbol _objc_metaclass_$_podsdummy_pods_xmldictionary in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(pods-xmldictionary-dummy.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(pods-xmldictionary-dummy.o) duplicate symbol _objc_class_$_podsdummy_pods_xmldictionary in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(pods-xmldictionary-dummy.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(pods-xmldictionary-dummy.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._collapsetextnodes in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._stripemptynodes in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._trimwhitespace in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._alwaysusearrays in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._preservecomments in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._wraprootnode in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._attributesmode in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._nodenamemode in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._root in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._stack in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_xmldictionaryparser._text in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_class_$_xmldictionaryparser in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_metaclass_$_xmldictionaryparser in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(xmldictionary.o) /users/kornferry/documents/repositories/kf4ddemo/xmldictionary.framework/xmldictionary(xmldictionary.o) duplicate symbol _objc_ivar_$_fmdatabase._databasepath in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._openresultsets in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._db in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._logserrors in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._crashonerrors in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._maxbusyretrytimeinterval in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._startbusyretrytime in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._cachedstatements in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._dateformat in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._isexecutingstatement in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._traceexecution in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._shouldcachestatements in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _fmdbexecutebulksqlcallback in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._intransaction in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _fmdbblocksqlitecallbackfunction in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._openfunctions in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabase._checkedout in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmstatement._statement in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmstatement._inuse in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmstatement._usecount in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmstatement._query in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_class_$_fmdatabase in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_metaclass_$_fmdatabase in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_class_$_fmstatement in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_metaclass_$_fmstatement in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabase.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabase.o) duplicate symbol _objc_ivar_$_fmdatabasepool._path in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabasepool.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabasepool.o) duplicate symbol _objc_ivar_$_fmdatabasepool._lockqueue in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabasepool.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabasepool.o) duplicate symbol _objc_ivar_$_fmdatabasepool._databaseinpool in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabasepool.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabasepool.o) duplicate symbol _objc_ivar_$_fmdatabasepool._databaseoutpool in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabasepool.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabasepool.o) duplicate symbol _objc_ivar_$_fmdatabasepool._openflags in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabasepool.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabasepool.o) duplicate symbol _objc_ivar_$_fmdatabasepool._delegate in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabasepool.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabasepool.o) duplicate symbol _objc_ivar_$_fmdatabasepool._maximumnumberofdatabasestocreate in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabasepool.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabasepool.o) duplicate symbol _objc_class_$_fmdatabasepool in: /users/kornferry/documents/repositories/kf4ddemo/awsiossdkv2.framework/awsiossdkv2(fmdatabasepool.o) /users/kornferry/documents/repositories/kf4ddemo/fmdb.framework/fmdb(fmdatabasepool.o) [and on , on , on, ending with...] ld: 260 duplicate symbols architecture i386 clang: error: linker command failed exit code 1 (use -v see invocation)
the aws mobile sdk ios depends on libsqlite3.dylib
, libz.dylib
, , systemconfiguration.framework
, not providing them. cause error message. section of aws mobile sdk ios developer guide lists necessary dependencies.
Comments
Post a Comment