Estoy haciendo algo de desarrollo de kernel de Linux, y estoy tratando de usar Netbeans. A pesar del apoyo declarado para los proyectos de C basados en Make, no puedo crear un proyecto de Netbeans totalmente funcional. Esto a pesar de compilar que Netbeans analice un kernel binario que se compiló con información de depuración completa. Los problemas incluyen:Configuración de Netbeans/Eclipse para Linux Kernel Development
- archivos están excluidos erróneamente: Algunos archivos están en gris de forma incorrecta en el proyecto, lo que significa Netbeans no cree que deberían ser incluidos en el proyecto, cuando en realidad son compilados en el kernel. El principal problema es que Netbeans omitirá cualquier definición que exista en estos archivos, como estructuras de datos y funciones, pero también omitirá las definiciones de macro.
- no se encuentran las definiciones: Bastante autoexplicativo: muchas veces, Netbeans no puede encontrar la definición de algo. Esto es en parte un resultado del problema anterior.
- no puede encontrar los archivos de cabecera: no requiere aclaración
Me pregunto si alguien ha tenido éxito con la creación de Netbeans para el desarrollo del núcleo Linux, y si es así, ¿qué valores se utilizan. En última instancia, estoy buscando Netbeans para poder analizar el Makefile (preferido) o extraer la información de depuración del binario (menos deseable, ya que esto puede ralentizar significativamente la compilación), y determinar automáticamente qué archivos se compilan realmente y cuáles las macros en realidad están definidas. Luego, en base a esto, me gustaría poder encontrar las definiciones de cualquier estructura de datos, variable, función, etc. y completar la autocompletación.
déjame aclarar esta cuestión con algunos puntos:
- No estoy interesado en soluciones que implican Vim/Emacs. Sé que a algunas personas les gustan, pero yo no soy uno de ellos.
- Como el título sugiere, yo también sería feliz de saber cómo set-up Eclipse para hacer lo que necesito
- Aunque yo preferiría una cobertura perfecta, algo que sólo pierde uno en un millón de definiciones obviamente bien
La útil función "Preguntas relacionadas" de SO me ha informado que la siguiente pregunta está relacionada: https://stackoverflow.com/questions/149321/what-ide-would-be-good-for-linux-kernel-driver-development. Al leerlo, la pregunta es más una comparación entre IDE, mientras que estoy buscando cómo configurar un IDE en particular. Aun así, el usuario Wade Mealing parece tener cierta experiencia en el trabajo con Eclipse en este tipo de desarrollo, por lo que ciertamente apreciaría sus respuestas (y por supuesto todas sus).
Saludos
Gracias por su consejo. Intenté algo similar con los archivos make-log, pero al final todavía presentaba los mismos problemas. Y el uso de esos CFLAGS que especificó sería un PITA porque aumenta mucho el tiempo de compilación. –
Debería funcionar según la experiencia anterior. Le daría una oportunidad. Aunque algunos símbolos a veces faltan y aparecen nuevamente, esto es puramente un problema interno de Netbeans. – Minghua
[Aquí] (https://github.com/minghuascode/Nbk/blob/master/note-nbkparse) Creé un script para generar el archivo make-log adecuado para que NetBeans lo lea e interprete desde el resultado archivos. Sí, necesitas modificar los makefiles de Linux para dejar los archivos dep. Funciona muy bien para mí (casi no faltan símbolos). Los pasos son un poco largos, pero una vez que lo hayas hecho, todo será sencillo. Desear esta ayuda – minghua