Получение XCode для включения, компиляции и связывания существующей (С++) кодовой базы в XCode 4.3 (.1)
Я пытаюсь "импортировать" существующую кодовую базу С++ в свой проект iOS XCode.
Проблема в том, что xCode не будет компилировать (и, следовательно, не ссылаться) мой код.
Это то, что я сделал до сих пор:
- Файл > Добавить файлы в "Проект". Я не отмечаю "Копировать файлы", так как это не кодовая база для нескольких платформ и несколько копий исходного кода.
- Я добавил соответствующий путь к настройкам проекта "Путь поиска по заголовку". Включая файлы заголовков, я могу # включить "stuff.h" из моего файла Objective-C ++ (.mm).
Однако я не могу найти способ сказать XCode для компиляции файлов .cpp?
Несколько точек:
- Я не ищу способ предварительно скомпилировать его в библиотеку и связать это.
- Проект представляет собой стандартный проект iOS Objective-C. Вызывается код С++ (это не проблема).
Обновление
Я добавил каталог
Когда я добавляю его, XCode спрашивает меня, хочу ли я "Создать внешний проект системы сборки". Я оставляю его отмеченным, а два поля имеют значения по умолчанию "/usr/bin/make" и "$ (ACTION)". Однако моя кодовая база не компилируется во время сборки. Должен ли я писать собственный Makefile?
Если я не выберем "Создать внешний проект системы сборки", тогда ссылка подкаталога создается под целью, но не компилируется во время сборки, и выдается предупреждение:
warning: no rule to process file '$(PROJECT_DIR)/../codebase'
of type folder for architecture i386
Ответы
Ответ 1
Даже если вы не проверяете Скопировать файлы, вы должны проверить Добавить в целевые объекты при добавлении файлов в проект.
![enter image description here]()
Если вы забыли сделать это, вы можете выбрать цель, перейдите на вкладку Сборка факс и добавьте файлы в Скомпилировать источники.
![enter image description here]()
Ответ 2
Если вы перейдете к своим Целям → Сформировать фазы → Скомпилировать источники → "+" → "Добавить другие" → (выберите внешнюю исходную папку) → Выбрать: Создать группу для любых добавленных папок → Непроверено: Копирование элементов в пункт назначения.
Теперь ваша папка будет в XCode, имитирует структуру. Если вы добавите исходные файлы в эту папку в XCode, исходные файлы будут добавлены в вашу внешнюю директорию с исходным кодом. Таким образом, упрощается использование нескольких IDE и управление исходными связями.
Улов. Вам все равно придется вручную добавлять файлы в область "Компиляция источников". Это довольно просто. Просто нажмите и перетащите исходные файлы из каталога групп в XCode прямо в окно "Источники компиляции". Таким образом, есть дополнительный шаг, когда вы добавляете исходный файл. Забыв добавить их в окно "Источники компиляции", вы получите недопустимые ошибки компиляции символов.