Skip to main content
Jump to: navigation, search

Difference between revisions of "HowTo use the CDT to navigate Linux kernel source"

Line 27: Line 27:
 
#Select the '''Includes''' tab and then select '''GNU C'''  
 
#Select the '''Includes''' tab and then select '''GNU C'''  
 
#Click '''Add...'''  
 
#Click '''Add...'''  
#Click '''Workspace...''' then select your project's include directory  
+
#Click '''Workspace...''' then select your kernel's {{Code|include}} directory  
 
#Do another Add, Workspace and add {{Code|arch/}}''architecture''{{Code|/include}}, e.g., {{Code|arch/powerpc/include}}  
 
#Do another Add, Workspace and add {{Code|arch/}}''architecture''{{Code|/include}}, e.g., {{Code|arch/powerpc/include}}  
 
#Click the '''# Symbols''' tab  
 
#Click the '''# Symbols''' tab  

Revision as of 19:21, 10 November 2009

Here are 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.

Disclaimer: these steps were developed for Eclipse 3.5.1 + CDT 6.0.0.

  1. Download and install Eclipse plus the CDT.
  2. Configure and build your kernel. This can be done before or after downloading and installing Eclipse.
  3. Start up Eclipse.
  4. Click File->New->C Project
  5. Fill in a project name like my_kernel
  6. Uncheck the Use default location box and type in the root directory of your kernel into the Location box.
  7. In the Project type: pane, click the Makefile project and select Empty Project
  8. On the right side, select Linux GCC
  9. Click Finish
  10. 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.
  11. Click the square red stop button on the indexer.
  12. Right click the top-level project in the Project Explorer pane on the left, and select Properties at the bottom.
  13. Click the Manage Configurations at the top right.
  14. Select Linux GCC (if it isn't already) then click New...
  15. Give it a name like Linux config and a similar description, and click OK
  16. Select your new configuration, and click Set Active and then OK
  17. Select Resource, and then in the Text file encoding section, select Other and ISO-8859-1 in the box, then click Apply
  18. Click on Indexer and then clear out the Files to index up-front box.
  19. Select Use active build configuration at the bottom, and click Apply
  20. Click on Paths and Symbols
  21. Select the Includes tab and then select GNU C
  22. Click Add...
  23. Click Workspace... then select your kernel's include directory
  24. Do another Add, Workspace and add arch/architecture/include, e.g., arch/powerpc/include
  25. Click the # Symbols tab
  26. Click Add...
  27. Set the name to __KERNEL__
  28. Set the value to 1 and click OK
  29. Click the Source Location tab
  30. Click the twisty for your project.
  31. Select the Filter item and click Edit Filter...
  32. 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)
  33. Click OK and OK again to dismiss that dialog.
  34. Click OK on the Properties dialog.
  35. Right click on the project again and select Index then select Rebuild
  36. It will take about 20 minutes or so to complete.

Corey Ashford cjashfor@us.ibm.com

Back to the top