Как сопоставить символы отладки предварительно скомпилированной статической библиотеки с исходным кодом с Xcode 5?
Я должен скомпилировать FFmpeg для iOS, используявнешний скрипт сборки, но когда я отлаживаю, я вижу ассемблер, если я слишком углубляюсь в библиотечные функции libavformat:
0x109a73: cmpl $0, 1192(%ebp)
0x109a7a: jns 0x109a86 ; mov_write_header + 198 at movenc.c:3539
0x109a7c: movl $1, 1192(%ebp)
0x109a86: movl 16(%ebp), %eax
0x109a89: cmpl $0, 84(%eax)
0x109a8d: movl %edx, %ecx
0x109a8f: jne 0x109ad9 ; mov_write_header + 281 at movenc.c:3548
0x109a91: testb $2, 48(%ecx)
0x109a95: jne 0x109ac1 ; mov_write_header + 257 at movenc.c:3541
Остались четкие символы отладки, которые заставили бы меня поверить, что должен быть какой-то способ сообщить Xcode местоположение этого исходного кода, чтобы упростить отладку.
Это вообще возможно?
редактировать: Я нашел связанный вопрос здесьНет символов / источника для внешней библиотеки в Xcode 4
Поэтому, когда я бегуxcrun dwarfdump libavformat.a | grep "\.c"
Я получаю кучу результатов, как это:
AT_decl_file( "libavformat/movenc.c" )
Поэтому я попытался поместить соответствующие исходные файлы в папки, относящиеся как к файлу .a, так и к файлу .xcodeproj, но ни один из этих методов не сработал. Полный исходный код доступен здесь:https://github.com/openwatch/livestreamer-ios
edit2: Я нашел другой вопрос о том, как установить исходное сопоставление для lldb, но я не совсем уверен, что делать ...LLDB эквивалент команды gdb "directory" для указания исходного пути поиска?
Кажется, мне нужно сделать
(lldb) settings set target.source-map libavformat/movenc.c /path/to/libavformat/movenc.c
для каждого файла мне нужно?