Xcode 未在外部硬盘驱动器上读取 Parse 框架

Posted

技术标签:

【中文标题】Xcode 未在外部硬盘驱动器上读取 Parse 框架【英文标题】:Xcode Not Reading Parse Framework on External Hard Drive 【发布时间】:2015-02-13 05:59:07 【问题描述】:

我有一个项目存储在我的桌面上。但是,我的外部硬盘驱动器上有一个框架(parse.framework)。每当拔下硬盘驱动器,或者我退出 Xcode 并重新加载 Xcode 时,它​​都会告诉我框架丢失。我解决了这个问题,因为我删除了对框架的引用并重新添加了它,但我每次都必须这样做。有没有办法让我做一次,就是这样?另外,我想将我的应用程序导出为企业导出,并且在这个问题中回答了这样做的方法:Xcode 6 enterprise distribution not working 在答案的cmets中,有答案的链接是http://www.thecave.com/2014/09/16/using-xcodebuild-to-export-a-ipa-from-an-archive/ 对我来说不幸的是,每当我尝试使用终端构建我的应用程序时,我都会收到一个找不到框架的错误。我该如何解决这个问题,以便我可以构建和运行而不用担心 Parse 框架在我的外置硬盘上?

更新****

正如您在下面的 cmets 部分中看到的,@YuviGr 告诉我将 Parse.framework 导入我的项目。我已经尝试过了,但这是我得到的错误:

ld: warning: directory not found for option '-F/Volumes/Seagate'
ld: warning: directory not found for option '-FBackup'
ld: warning: directory not found for option '-FPlus'
ld: warning: directory not found for option '-FDrive/My'
ld: warning: directory not found for option '-FDocuments/Downloads'
Undefined symbols for architecture i386:
  "_sqlite3_bind_blob", referenced from:
      -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o)
  "_sqlite3_bind_double", referenced from:
      -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o)
  "_sqlite3_bind_int64", referenced from:
      -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o)
  "_sqlite3_bind_null", referenced from:
      -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o)
  "_sqlite3_bind_parameter_count", referenced from:
      ___59-[PFSQLiteDatabase executeQueryAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o)
      ___57-[PFSQLiteDatabase executeSQLAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o)
  "_sqlite3_bind_text", referenced from:
      ___34-[PFDateFormatter dateFromString:]_block_invoke in Parse(PFDateFormatter.o)
      -[PFSQLiteDatabase _bindObject:toColumn:inStatement:] in Parse(PFSQLiteDatabase.o)
  "_sqlite3_clear_bindings", referenced from:
      ___34-[PFDateFormatter dateFromString:]_block_invoke in Parse(PFDateFormatter.o)
  "_sqlite3_close", referenced from:
      -[PFDateFormatter dealloc] in Parse(PFDateFormatter.o)
      ___30-[PFSQLiteDatabase closeAsync]_block_invoke in Parse(PFSQLiteDatabase.o)
  "_sqlite3_column_blob", referenced from:
      -[PFSQLiteDatabaseResult dataForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_column_bytes", referenced from:
      -[PFSQLiteDatabaseResult dataForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_column_count", referenced from:
      -[PFSQLiteDatabaseResult columnNameToIndexMap] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_column_double", referenced from:
      ___34-[PFDateFormatter dateFromString:]_block_invoke in Parse(PFDateFormatter.o)
      -[PFSQLiteDatabaseResult doubleForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_column_int", referenced from:
      -[PFSQLiteDatabaseResult intForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_column_int64", referenced from:
      ___34-[PFDateFormatter dateFromString:]_block_invoke in Parse(PFDateFormatter.o)
      -[PFSQLiteDatabaseResult longForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_column_name", referenced from:
      -[PFSQLiteDatabaseResult columnNameToIndexMap] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_column_text", referenced from:
      -[PFSQLiteDatabaseResult stringForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_column_type", referenced from:
      -[PFSQLiteDatabaseResult objectForColumnIndex:] in Parse(PFSQLiteDatabaseResult.o)
      -[PFSQLiteDatabaseResult columnIndexIsNull:] in Parse(PFSQLiteDatabaseResult.o)
  "_sqlite3_errmsg", referenced from:
      -[PFSQLiteDatabase _errorWithErrorCode:] in Parse(PFSQLiteDatabase.o)
  "_sqlite3_finalize", referenced from:
      -[PFDateFormatter dealloc] in Parse(PFDateFormatter.o)
      ___59-[PFSQLiteDatabase executeQueryAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o)
      ___57-[PFSQLiteDatabase executeSQLAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o)
      -[PFSQLiteStatement close] in Parse(PFSQLiteStatement.o)
  "_sqlite3_open", referenced from:
      -[PFDateFormatter init] in Parse(PFDateFormatter.o)
      ___29-[PFSQLiteDatabase openAsync]_block_invoke in Parse(PFSQLiteDatabase.o)
  "_sqlite3_prepare_v2", referenced from:
      -[PFDateFormatter init] in Parse(PFDateFormatter.o)
      ___59-[PFSQLiteDatabase executeQueryAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o)
      ___57-[PFSQLiteDatabase executeSQLAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o)
  "_sqlite3_reset", referenced from:
      ___34-[PFDateFormatter dateFromString:]_block_invoke in Parse(PFDateFormatter.o)
      -[PFSQLiteStatement reset] in Parse(PFSQLiteStatement.o)
  "_sqlite3_step", referenced from:
      ___34-[PFDateFormatter dateFromString:]_block_invoke in Parse(PFDateFormatter.o)
      ___57-[PFSQLiteDatabase executeSQLAsync:withArgumentsInArray:]_block_invoke in Parse(PFSQLiteDatabase.o)
      -[PFSQLiteDatabaseResult next] in Parse(PFSQLiteDatabaseResult.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我会发布图片,但显然我需要足够的代表才能做到这一点。

【问题讨论】:

为什么不将框架添加到项目的文件夹中?,而不仅仅是将其引用到外部驱动器 我尝试过,但在尝试之后,我得到的错误比我开始时更多 那么您必须找出错误,如果您愿意,可以将它们添加到问题中,我们将一一进行排序。但是为了让你解决你的问题,如果你想发布你的应用程序,你必须解决它,你必须将框架添加到你的项目中。 好的@YuviGr 我会这样做的。我会让你知道我得到的错误 您可以使用imgur.com上传图片 【参考方案1】:

实际上,在 YuviGr 的帮助下,我想出了如何解决这个问题。我必须将 parse.framework 导入到项目文件夹中,并且我需要在项目中拥有 Parse 快速入门指南中列出的所有框架。

【讨论】:

以上是关于Xcode 未在外部硬盘驱动器上读取 Parse 框架的主要内容,如果未能解决你的问题,请参考以下文章

外部硬盘驱动器上的 MySQL 表

Xcode,包括构建中的外部参考文件夹

从物理硬盘读取数据

从物理硬盘读取数据

在 XP 和 Windows 7 上的外部硬盘驱动器上运行 xampp

从 SQL Server Server 转储中恢复大数据