【问题标题】:RubyMotion and DropboxRubyMotion 和 Dropbox
【发布时间】:2013-08-11 16:30:06
【问题描述】:

我正在努力让 Dropbox Sync SDK 在我的 RubyMotion 应用中运行。我环顾四周,只发现另一个人在寻找help,但是他正在使用 Dropbox Core SDK,我无法像他那样修复它。这是我到目前为止所做的:

  1. 已下载 Dropbox Sync SDK,将其移至 vendor/Dropbox.framework
  2. 在我的 Rakefile 中添加了 app.vendor_project 'vendor/Dropbox.framework', :static, :products => ['Dropbox'], :headers_dir => 'Headers'app.frameworks += ['Security','QuartzCore']
  3. 运行rake clean,然后运行rake,得到以下输出。

架构 i386 的未定义符号:
“std::__1::basic_string, std::__1::allocator >::compare(char const*) const",引用自: Dropbox(sync.o) 中的 fetch_metadata(dbx_client*, HttpRequester&, dbx_path_val const&, bool, bool, bool)

...

如果需要,我可以提供完整的堆栈跟踪。知道我错过了什么吗?感谢船载的任何帮助。

编辑:使用 markrickert 方法的堆栈跟踪:

:~/Development/simple|master⚡ ⇒  rake
rake aborted!
[!] Unable to find a specification for `Dropbox-Sync-API-SDK`.
~/.rvm/gems/ruby-1.9.3-p448/gems/cocoapods-0.23.0/lib/cocoapods/resolver.rb:195:in `find_cached_set'
~/.rvm/gems/ruby-1.9.3-p448/gems/cocoapods-0.23.0/lib/cocoapods/resolver.rb:153:in `block (2 levels) in find_dependency_specs'
~/.rvm/gems/ruby-1.9.3-p448/gems/cocoapods-0.23.0/lib/cocoapods/user_interface.rb:113:in `message'
~/.rvm/gems/ruby-1.9.3-p448/gems/cocoapods-0.23.0/lib/cocoapods/resolver.rb:152:in `block in find_dependency_specs'
~/.rvm/gems/ruby-1.9.3-p448/gems/cocoapods-0.23.0/lib/cocoapods/resolver.rb:148:in `each'
~/.rvm/gems/ruby-1.9.3-p448/gems/cocoapods-0.23.0/lib/cocoapods/resolver.rb:148:in `find_dependency_specs'
~/.rvm/gems/ruby-1.9.3-p448/gems/cocoapods-0.23.0/lib/cocoapods/resolver.rb:65:in `block (2 levels) in resolve'
...

^^ 需要运行 pod setup 来解决此问题。

【问题讨论】:

    标签: ios dropbox rubymotion


    【解决方案1】:

    您可能想查看Dropbox Sync Podspec file 以了解您需要做什么才能将其正确包含在您的文件中...或者您可以只使用 Cocoapod:

    在您的 Gemfile 中:

    gem "motion-cocoapods", '~> 1.3.0'
    gem "cocoapods"
    

    在你的 rakefile 中:

    Motion::Project::App.setup do |app|
      # Use `rake config' to see complete project settings.
      app.name = 'Whatever'
    
      app.pods do
        pod 'Dropbox-Sync-API-SDK'
      end
    end
    

    然后当您运行rake pod:install 时,它应该会自动包含所有依赖项并编译并允许您使用 SDK。

    【讨论】:

    • 感谢大家的回复,我在上面添加了一个堆栈跟踪,显示了我在执行这些步骤时遇到的错误。
    • 开个玩笑,我明白了。我需要运行pod setup。感谢您的帮助。
    • 不客气!感谢您接受我的回答。很高兴您将pod setup 放在您原来的问题中......您只需在每台机器上执行一次即可让 cocoapods 准备就绪。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    相关资源
    最近更新 更多