Dropbox Framework

I need to add dropbox support, and have an error importing the framework. Here are my steps, using GitHub - dropbox/dropbox-sdk-obj-c: Official Objective-C SDK for the Dropbox API v2. as a starting point, using carthage to create the framework:

  1. Install brew with

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  1. Install Carthage with
brew update
brew install carthage
  1. Create a Cartfile in my project with:
# ObjectiveDropboxOfficial
github "https://github.com/dropbox/dropbox-sdk-obj-c" ~> 3.7.0
  1. Build the framework with

carthage update --platform iOS

  1. Import the framework into Fire (.2265), when I get the following error:
Parsing (root) file: ObjectiveDropboxOfficial/ObjectiveDropboxOfficial.h
======
An error occurred: HeaderImporter.ParserException: ObjectiveDropboxOfficial/ObjectiveDropboxOfficial.h (45) Cannot find include file: ObjectiveDropboxOfficial/ObjectiveDropboxOfficial/DBSDKImportsShared.h
  at HeaderImporter.CParser+<>c__DisplayClass1.<.>b__2 (System.String a, System.Boolean rela) [0x00178] in <bf6441df6c8d445fb8f9bc2d634ac9d9>:0 
  at HeaderImporter.Preprocessor.raise_OnImport (System.String arg1, System.Boolean arg2) [0x0000a] in <bf6441df6c8d445fb8f9bc2d634ac9d9>:0 
  at HeaderImporter.Preprocessor.Process (System.String aFN, System.IO.TextReader aInput) [0x009ff] in <bf6441df6c8d445fb8f9bc2d634ac9d9>:0 
  at HeaderImporter.CParser..ctor (HeaderImporter.CParserConfig aConfig) [0x00434] in <bf6441df6c8d445fb8f9bc2d634ac9d9>:0 
  at HeaderImporter.CParser..ctor (System.String aInputFN, System.String aInput, System.Boolean aPreprocess, System.Int32 aBitSize, System.Func`4[T1,T2,T3,TResult] aInclude, System.Collections.Generic.IEnumerable`1[T] aPreprocessorDefines, System.Func`5[T1,T2,T3,T4,TResult] aval, System.Boolean aWantComments, System.Func`4[T1,T2,T3,TResult] aLoadFile) [0x0004b] in <bf6441df6c8d445fb8f9bc2d634ac9d9>:0 
  at HeaderImporter.Import.DoImportWithState (System.String aFileName) [0x003c6] in <bf6441df6c8d445fb8f9bc2d634ac9d9>:0 
  at HeaderImporter.Import.IntMain (System.String[] args) [0x00713] in <bf6441df6c8d445fb8f9bc2d634ac9d9>:0 
  at HeaderImporter.ConsoleApp.Main (System.String[] args) [0x0014b] in <bf6441df6c8d445fb8f9bc2d634ac9d9>:0 


                Error calling Process.Execute: Failed with error code: 1
System.Exception: Failed with error code: 1
  at RemObjects.Train.API.Shell.Exec (RemObjects.Script.EcmaScript.ExecutionContext ec, System.Object aSelf, System.Object[] args) [0x003b9] in <83e82f061e6b4782a4257ba7b0c51710>:0 
              } shell.exec(/Applications/Fire.app/Contents/Resources/HeaderImporter.exe) 
            } function runHeaderImporterForLibrary 
          } function doProcessLibrary 
        } function processLibrary 
      } function processiOSDeviceLibrary 
    } function processiOSLibrary 
  } function processIOSFramework 
} script 

I see the DBSDKImportsShared.h file, in the checkouts source folder, but what’s missing to get Fire to see it?

ObjectiveDropboxOfficial/ObjectiveDropboxOfficial.h

iirc that was fixed last week, or so. what build are you using?

Actually, maybe not. can you send me the .framework, zipped up?

Yep, will do, using .2265 btw.

I get a different error here:

Error ObjectiveDropboxOfficial/DBTasks.h (92:133 pp: 7546): Exception while processing node
======
An error occurred: System.Exception: ObjectiveDropboxOfficial/DBTasks.h (92:36 pp: 7546):  Name TResponse  COULD NOT BE FOUND: TResponse

looks like a bug with our parsing of generics, as the line looks fine.

@interface DBRpcTask <TResponse, TError> : DBTask

Thanks, logged as bugs://79871

bugs://79871 got closed with status fixed.

1 Like