HowTo use the CDT to navigate Linux kernel source
Revision as of 19:26, 10 November 2009 by Cjashfor.us.ibm.com (Talk | contribs)
I've developed some steps that I've found to get the CDT to work well with the Linux kernel source. If you exclude some of these steps, it may still work to a large degree, but some things may not work exactly right; for example it may find the wrong include file for a C file.
Anyway, as you do these steps, I think you may understand how they assist the indexer to do a good job for the Linux kernel source.
- Download and install Eclipse plus the CDT.
- Configure and build your kernel. This can be done before or after downloading and installing Eclipse.
- Start up Eclipse.
- Click File->New->C Project
- Fill in a project name like my_kernel
- Uncheck the Use default location box and type in the root directory of your kernel into the Location box.
- In the Project type: pane, click the Makefile project and select Empty Project
- On the right side, select Linux GCC
- Click Finish
- Eclipse will start indexing the kernel source files, so double click on the little moving "activity" icon in the lower right part of the Eclipse window.
- Click the square red stop button on the indexer.
- Right click the top-level project in the Project Explorer pane on the left, and select Properties at the bottom.
- Click the Manage Configurations at the top right.
- Select Linux GCC (if it isn't already) then click New...
- Give it a name like Linux config and a similar description, and click OK
- Select your new configuration, and click Set Active and then OK
- Select Resource, and then in the Text file encoding section, select Other and ISO-8859-1 in the box, then click Apply
- Click on Indexer and then clear out the Files to index up-front box.
- Select Use active build configuration at the bottom, and click Apply
- Click on Paths and Symbols
- Select the Includes tab and then select GNU C
- Click Add...
- Click Workspace... then select your project's include directory
- Do another Add, Workspace and add arch/architecture/include, e.g., arch/powerpc/include
- Click the # Symbols tab
- Click Add...
- Set the name to __KERNEL__
- Set the value to 1 and click OK
- Click the Source Location tab
- Click the twisty for your project.
- Select the Filter item and click Edit Filter...
- Click Add Multiple... and then select all of the arch/* directories in your kernel source that will not be used (i.e. all the ones that are not for the architecture you are using)
- Click OK and OK again to dismiss that dialog.
- Click OK on the Properties dialog.
- Right click on the project again and select Index then select Rebuild
- It will take about 20 minutes or so to complete.