2016-07-28 3 views
2

Я пытаюсь создать XOrg из исходного кода, и я запускаю ошибку времени компиляции, когда функция называется ненадлежащим образом. Тип функции определяется в другом файле, включенном в файл, вызывающем ошибку. Я не знаю, что это за файл, поэтому я не знаю, где этот файл должен использоваться. Есть ли способ найти это определение типа, кроме просмотра каждого включенного файла?Как найти тип, указанный во включенном файле?

+1

Если чистые источники, выпущенные проектом X.Org, не скомпилируются для вас, то вы делаете это неправильно. Я полагаю, источники X.Org поставляются с системой сборки; вы не используете его? В целом, неясно, что вы имеете в виду, когда говорите, что не знаете, где * должен использоваться данный файл, или почему вы предполагаете, что знание его типа сообщит об этом. –

+0

Следуя приведенному выше замечанию, возникает вопрос: «Что вы пытаетесь его построить ... и как вы пытаетесь его построить?» Прошло несколько лет с тех пор, как я построил X из источника, но следующие документы, представленные в источнике, без особых проблем работали на SuSE. Если вы нажмете ошибку сборки, сообщите об ошибке [** Главная страница Xorg Bugzilla **] (https://bugs.freedesktop.org/). –

ответ

1

Вы можете использовать такие инструменты, как grep, чтобы найти все файлы в проекте.

Поиск файлов включений для вашего имени типа в виде слова (с флагом -w) должен легко найти объявление типа.

grep может искать рекурсивно в подкаталогах с флагом -r.

2

Вы можете использовать эту команду Баш:

grep -R "yourTypeName" * 

внутри директории, где находится файл.

Если вы установили ack-grep, вы можете запустить:

ack-grep -cc "yourTypeName" 

искать все C файлы.

Смежные вопросы