WedX - журнал о программировании и компьютерных науках

Управление исходными файлами в Xcode

Я перемещал некоторые файлы в проекте Xcode и удалял некоторые файлы в поисковике (я знаю). Я сломал свой проект, и теперь я не могу понять, как это исправить.

На данный момент я получаю ошибку Undefined symbols for architecture x86_64: при попытке сборки. Однако файлы на самом деле находятся в проекте и физически в каталоге проекта. Я добавил их в скомпилированные источники, но все равно получаю ту же ошибку.

Я не понимаю, как Xcode управляет исходными файлами, и я не нашел никакой полезной информации о том, как устранять эти проблемы. Поиск в Google в основном говорит мне не удалять файлы (слишком поздно), и я ничего не могу найти в документах Mac Developer.

Как я могу вернуть свои исходные файлы в порядок, чтобы я мог собрать этот проект?

EDIT: я заметил это в скомпилированных источниках:

введите здесь описание изображения Файлы, которые вызывают проблемы, это те, у которых нет "...in Worker" рядом с ними (Worker - это название проекта).

25.09.2015

Ответы:


1

При попытке удалить файл появляются два варианта: Удалить ссылку или Переместить в корзину.

  1. Если вы выберете Удалить ссылку, ваш файл будет находиться в каталоге файлов проекта. Вам просто нужно перейти в Finder-> ваш проект и добавить этот недостающий файл.
  2. Если вы выберете «Переместить в корзину», перейдите в «Корзину», выберите файл, щелкните правой кнопкой мыши и выберите «Вернуть».

Если по-прежнему вы получаете ошибку «Неопределенные символы для архитектуры x86_64», то внимательно наблюдайте за ошибкой, в последней строке ошибки написано какое-то имя переменной/имя класса, которое отсутствует. Либо эта переменная объявлена ​​несколько раз, либо не объявлена.

25.09.2015
  • Заявлено несколько раз? Как в заголовке без включения защиты? 25.09.2015
  • Да, также иногда переменная объявляется в общем функциональном классе. И этот общий класс функций наследуется несколько раз, что приводит к циклическому наследованию. Чтобы избежать такого рода, наследуйте/включайте общий класс функций в файле pch. 25.09.2015

  • 2

    Я не понимаю, как Xcode управляет исходными файлами

    Это действительно не так. Вы добавляете файлы в проект, и Xcode обновляет файл проекта с учетом того факта, что эти файлы находятся в проекте, и их расположения на диске. Если файлы пропадают из проекта (Xcode не может их найти, потому что вы их переместили или удалили), имена этих файлов отображаются красным цветом в навигаторе проекта.

    Итак, начните с поиска красных имен файлов в навигаторе проекта. Это файлы, которые вам нужно вернуть. Если вы не уверены, где они были раньше, или если вы хотите переместить их в другое место, вы также можете просто удалить их из проекта, а затем снова добавить.

    На данный момент я получаю Неопределенные символы для архитектуры x86_64: ошибка

    Это может означать, что вы забыли добавить тот или иной файл к определенной цели. Если вы выберете исходный файл в навигаторе проекта и посмотрите на инспектор файлов, там есть раздел под названием «Целевое членство», где вы можете увидеть, частью каких целей является файл. Если вы только что добавили файл в проект, убедитесь, что установлены флажки рядом со всеми целями, зависящими от этого файла.

    25.09.2015
  • Это хорошая информация, но файлы на самом деле находятся в проекте, и цели правильные. До сих пор не работает. Это одна из ошибок: MASClipAddVertex(double, double, MASClipPolyline*), на которую ссылается: -[MASPolyline clip:] в MASPolyline.o 25.09.2015

  • 3

    Перейдите в «Build Phrases -> Copy Bundle Resources» и удалите те файлы, которые представлены красным цветом.

    Также убедитесь, что в навигаторе вашего проекта вы должны удалить эти отсутствующие файлы, поскольку вы удалили их физически из каталога вашего проекта.

    Надеюсь это поможет!

    25.09.2015
  • На самом деле ни один из файлов не отсутствует. Их заменили на... Я не помню. Я не должен был связываться с этим. 25.09.2015
  • Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]