iOS, CoreAudio: странная ошибка «CADebugPrintf.h: нет такого файла или каталога ...» - PullRequest
18 голосов
/ 07 февраля 2011

В папке «iPublicUtility» есть несколько вспомогательных файлов нескольких примеров кодов Apple, связанных со звуком, таких как aurioTouch: http://developer.apple.com/library/ios/#samplecode/aurioTouch/Introduction/Intro.html

Я могу построить эти образцы в порядке. Но всякий раз, когда я создаю новый проект для тестирования и включаю файлы из папки «iPublicUtility», я получаю: Ошибка 'CADebugPrintf.h: нет такого файла или каталога ...' в файле 'CADebugMacros.h'.

Я сделал настройки моего тестового проекта совпадающими с образцами Apple, но эта ошибка не уйду Любое предложение?

SDK: iOS 4.2, iMac OSX 10.6.6

Спасибо всем.

1012 * с *

Ответы [ 5 ]

33 голосов
/ 19 апреля 2011

выберите цель, откройте панель «Настройки сборки», найдите «Макросы препроцессора». Оставьте поля пустыми (я избавился от записи DEBUG)

22 голосов
/ 16 марта 2012

Я использовал ответ, предоставленный Джастином, и он работал нормально, пока не установил Xcode 4.3.1 и проблема не вернулась.

В настоящее время я решил эту проблему, загрузив CADebugPrintf.h и .cpp.

Я нашел 2 файла по этой ссылке:

http://svn.perian.org/trunk/CoreAudio/PublicUtility/

Приветствие.

9 голосов
/ 07 февраля 2011

У меня установлено три дистрибутива Xcode.

файл существует во всех трех.

1) убедитесь, что файл существует в вашей системе.

2a) добавьтепуть поиска к вашему проекту для каталога PublicUtility

или

2b) добавьте заголовок к этапу сборки "copy headers" цели

в зависимости от того, сколько у вас зависитдля этих файлов может потребоваться более надежный подход (который существует).Один (довольно) безопасный / простой способ сделать это, если вы используете много аудио технологий и источников, это добавить родительский каталог родительского каталога в ваши пути поиска или деревья источников (рекурсивно).

другой способчтобы добавить его в общий файл настроек сборки.

вы также можете скопировать конкретный выпуск куда-нибудь, а затем добавить его в свои пути поиска.просто знайте, что источники обновляются несколько регулярно, поэтому вам придется обновлять их, когда наступит удачное время для вас.в этом случае вам также следует изменить ссылки на проект.

Редактировать: добавление пути поиска (2a)

Один из способов добавления пути поиска (при условии, что инструменты Xcode установлены в: / Developer /):

1) В Xcode (3) выберите цель.

2) cmd + i (получить информацию)

3) выберите вкладку «Построение» информационного окна

4) введите HEADER_SEARCH_PATHS в поле поиска

5), если значение не определено на этом уровне (например, оно нежирным шрифтом), затем установите значение / Developer / Extras / CoreAudio / PublicUtility / $ (наследуется)

, если оно уже определено на этом уровне, затем добавьте / Developer /Extras / CoreAudio / PublicUtility / в списке каталогов для поиска (значение).

, если вы хотите выполнить рекурсивный поиск в библиотеке, используйте / Developer / Extras / CoreAudio / **.это может быть полезно при создании AU или других проектов, требующих включения AU и PublicUtility.

1 голос
/ 17 февраля 2015

Та же проблема, но, похоже, она была устранена путем загрузки по ссылке ниже и добавления отсутствующих файлов CADebugPrintf.h и CADebugPrintf.cpp.

https://developer.apple.com/library/ios/samplecode/CoreAudioUtilityClasses/Listings/CoreAudio_PublicUtility_CADebugPrintf_h.html

0 голосов
/ 24 июля 2012

У меня была такая же проблема, и загрузка файлов в папку iPublicUtility не решила ее.Я нашел ответ случайно, узнав о файлах расширений .mm на этой странице:

Цель C Проект с использованием классов C ++ POSIX

Я переименовал свой файл реализации с помощью a.мм и ошибки компилятора исчезли.Надеюсь, что это может помочь кому-то в дальнейшем!

...