При связывании библиотеки из рабочей области Xcode появляется диалоговое окно «Файл уже связан» - PullRequest
1 голос
/ 04 мая 2020

У меня есть рабочая область Xcode (11.4.1 - хотя это произошло в 11.4 и 11.3). Это рабочее пространство состоит из нескольких библиотек iOS Swift stati c. Одна из библиотек: lib (A) должна использовать другую библиотеку lib lib (B) , расположенную в том же рабочем пространстве.

Если я просто попытаюсь import модуль из некоторого исходного файла в lib (A) компилятор не сможет найти символы. Достаточно справедливо, чтобы «Найти неявные зависимости» работало, как я понимаю, мне нужно Link Binary With Libraries; Я могу принять это, поэтому я явно связываю это:

Для lib (A) I go к своей цели и выберите Link Binary With Libraries под его Build Phases и выберите lib (B) из браузера рабочей области. Когда я это делаю, я получаю диалоговое окно с предупреждением:

Файл уже связан

warning dialog

Если я нажмите Отмена , он все еще добавляет выбранный элемент в Link Binary With Libraries, но теперь все налажено. Почему предупреждение?

То же самое применимо, если бы я также добавил цель модульного тестирования в проект для lib (A) . Если я явно связываю требуемые stati c libs, я получаю это предупреждение. Нажатие «Отмена» добавляет элемент, и все работает.

Теперь, «все работает» с XCode, заманчиво просто медленно отступить и принять это за то, что оно того стоит. Однако мне любопытно, что означает это предупреждение / почему оно там? Понятно, что, по словам компилятора, связывание необходимо, поскольку оно не компилируется без него. При добавлении ссылки, хотя, похоже, на это жалуется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...