Писал по этой теме диплом :)
из самых доступных и удобных для поиска кода будет opengrok. он основан на ctags.
Вы также можете написать фронт для lucene или sphinx.
OpenGrok работает из коробки, поддерживает подсветку синтаксиса, умеет работать с vcs's. А если его интегрировать с doxygen, то вообще сказка получается.
hub.opensolaris.org/bin/view/Project+opengrok/