1

我正在使用xcodeprojRuby Gem 向我的 Xcode 项目添加一个自定义框架:

top_group = project.groups[0]
framework_ref = top_group.new_file(framework_path)
target = project.targets[0]
target.frameworks_build_phase.add_file_reference(framework_ref)

然后,当我打开 Xcode 并查看目标时,该框架在 Linked Frameworks and Libraries 下正确列出,但链接器抱怨在构建时找不到该框架。在 Xcode 的 Linked Frameworks 列表中拖动框架修复它,我可以构建成功。

为什么?拖动似乎迫使 Xcode 重新生成project.pbxproj并添加缺少的引用。那会是什么?

4

2 回答 2

1

您需要设置框架所在的路径!

在“FRAMEWORK_SEARCH_PATHS”的构建设置中附加路径

settings = target.build_settings("Debug")
settings["FRAMEWORK_SEARCH_PATHS"] = [settings["FRAMEWORK_SEARCH_PATHS"], your_framework_directory ]

或者

settings["FRAMEWORK_SEARCH_PATHS"] = settings["FRAMEWORK_SEARCH_PATHS"] + " " + your_framework_directory ]
于 2015-06-22T18:20:31.023 回答
0

在构建设置中附加路径,如下所示:

#Add framework search path
settings = target.build_settings("Release")
settings["FRAMEWORK_SEARCH_PATHS"] = Array(settings["FRAMEWORK_SEARCH_PATHS"])<< '$(PROJECT_DIR)/SDK'
settings["LIBRARY_SEARCH_PATHS"] = Array(settings["LIBRARY_SEARCH_PATHS"])<< '$(PROJECT_DIR)/SDK'
于 2018-06-28T11:46:20.247 回答