Заголовок зонтика для цели не найден, карта модуля не будет сгенерирована
Когда я пытаюсь собрать CKCountdownButton как фреймворк в Xcode 6.3, он жалуется
предупреждение: не найден зонтичный заголовок для цели 'CKCountdownButton', карта модуля не будет сгенерирована
Затем, когда я импортирую этот фреймворк в другой проект, он потерпел неудачу с Нет такого модуля 'CKCountdownButton'
4 ответа
Добавить CKCountdownButton.h
в рамках исправлена эта проблема.
Я думаю, что заголовок зонтика означает заголовочный файл с таким же именем, как Framework
Я нашел другое решение, Xcode предоставляет способ указать заголовок unbrella через конфигурацию файла карты модуля.
Содержание module.modulemap
должно быть:
framework module Foo {
umbrella header "Bar.h"
header "other-header.h"
export *
module * { export * }
}
Эта цель должна иметь как минимум 1 файл Swift. Убедитесь, что у вас есть файлы Swift, добавленные к цели
Карта настраиваемого модуля для фреймворка [О программе]
Создать umbrella file
- любой .h
файл (или автоматически сгенерированный <product_name>.h
для цели Framework)
Добавить все .h
файлы, которые будут открыты для потребителя в umbrella file
#import "header_1.h"
#import "header_2.h"
Добавить umbrella file
и файлы заголовков .h
из него (header_1.h, header_2.h) в Headers
раздел [не могу] [общедоступное целевое членство]
Select `.h` file -> Select File Inspectors Tab -> Target Membership -> Select the target and make it **public**
//or
Project editor -> select a target -> Build Phases -> Headers -> add files to the **public** zone
Создать .modulemap
файл
framework module product_name {
umbrella header "<umbrella_name>.h"
export *
}
Проверьте Defines Module
Build Settings -> Defines Module -> YES
Уточнить Module Map File
Build Settings -> Module Map File -> relative path to `.modulemap` file
У меня была такая же проблема с GoogleToolbox. Это случилось, когда я попытался обновить репозиторий, и произошла какая-то ошибка. Просто сделал pod install из терминала в папке проекта, и все стало хорошо.