2013-07-22 3 views
1

У меня есть существующий проект C, и я хочу использовать XCode в качестве моей IDE. Чтобы быть ясным, у меня нет никаких намерений построить это на Mac OS X, так как это встроенная кодовая база Linux. Я просто хочу, чтобы IDE для редактирования, поиска, перехода к определению и т. Д. И т. Д. Я пытаюсь определить, будет ли Xcode работать для меня.Не индексирование кода C включает каталог

В качестве примера я создал проект командной строки в Xcode (C++, поскольку есть миксы C и C++), и добавил исходное дерево в проект.

Мое исходное дерево таково, что оно похоже на следующее. Обратите внимание, что мой каталог сборки находится вне моего каталога src. src действительно содержит файлы Makefile.in.

src 
|----include 
|  |----file01.h 
|----file01.c 
|----AnotherDirectory 
|  |---file02.h 
|  |---file02.c 

В XCode 3 индексация будет найти определение в file02.h, но не в file01.h. В XCode 4 индексирование не найдет определений, определенных в файле file01.h или file02.h.

Есть ли способ добавить папки или файлы в индексирование?

В обеих версиях я добавил папку src и связал вместо копирования.

Есть ли способ получить XCode 3 или 4, чтобы иметь возможность перейти к определению с моим исходным деревом?

С уважением, медленно бегун

Edit: Явное добавление в каталог «включить» не решить проблему.

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

+0

Вы явно добавили файлы заголовков в проект Xcode? – trojanfoe

+0

Думаю, нет. Я добавил папку src в проект. –

+0

Вам также нужно добавить заголовки. – trojanfoe

ответ

2

Ну, я получил его на работу. Я не уверен, почему есть разница, но когда я добавить файлы в моем Xcode проект, если я выбираю:

Create groups for any added folders 

вместо

Create folder references for any added folders 

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

0

даже если это очень старая проблема. У меня была такая же проблема с текущим Xcode. Решение, которое работало для меня, было , но не содержит папку src, но ее родительский папка. В моем случае это была папка проекта CMake, которая, за исключением каталога сборки, не содержала многого. Даже когда Xcode ничего не делает с файлами CMake, теперь индексирование работает в противном случае.