el 02-18-2016 01:46 PM
Hola a todos,
Mi problema es que tengo 2 librerias .h, una copia de la otra. en mi programa de CVI, en el codigo fuente .C, utilizo un enum, declarado en el .h. cuando le doy CTRL+i (go to definition). me dice que la encuentra en las 2 librerias.h. aunque solo tengo incluida 1 en el .C.
esto causa que cuando compilo. no sepa a cual dirigirse.
ya renombre la Libreria y la quite del folder( la que no se usa). y aun asi Labwindows CVI, me sigue diciendo que la encuentra en las 2 librerias.
mi pregunta es como quito la referencia a la libreria antigua para que solo la busque en el .h actual?
Gracias por su ayuda.
el 02-18-2016 05:38 PM
Hola el compilador no tiene referencia a un archivo .h si no està definida en uno de los .c u .h. Puede ser que haya una cadena de archivos que en algun sitio tiene una referencia al .h antiguo.
Lo que puedes hacer es abrir cada archivo .c de tu proyecto y usar la función Options >> Preprocess source file: se abrirá otra ventana que incluye todo el código del archivo .c comprendendo de manera explicita el contenido de los archivos incluídos a cada nivel: dentro de esta ventana puedes buscar por el .h incorrecto y ver adonde está referenciado para andar corrigiendo la referencia.
el 02-19-2016 03:08 AM
Estaba revisando tu pregunta y me fijé en que ya has intendado renombrar y mover el archivo, por lo que ya no deberías encotrarlo, y no me entero del porque se el CVI siga encontrando un elemento definido dos veces.
Lo que puedes revisar es que no tengas la librería .h antigua incluyda en el proyecto aunque no en algun file .c; igualmente averigua si la librería es la referencia de un instrumento (.fp) que tienes añadido en el menu Instrument u en la lista de librerías del menu Library.
Puede haber otras causas por tener referencia al archivo .h que no se me ocurren por el momento, sin embargo con el Preprocess source file deberías ver quien va ligando la librería a tu proyecto. Recuerda que este procedimiento debe ser repetido para todos los .c que estas usando.
Si no logras resolver el asunto, pon un pantallazo del error que recibes del compilador.