Hola gente.
Delphi (Community Edition) me está dando quebraderos de cabeza a raíz de la cláusula
uses. A ver si me explico bien y no me lío, porque es un caso muy especial (la biblioteca Allegro.pas).
Todo empezó porque, aunque en las opciones de proyecto pongo la ruta de la biblioteca (en este caso, "../../lib") en
Search path, el IDE no es capaz de encontrar las unidades (el compilador, parece que sí aunque a veces no pero tengo que hacer más pruebas) así que me muestra un montón de errores que no deberían estar.
Para evitarlo puse "in" para que supiera dónde encontrar las unidades. Por ejemplo:
Código Delphi
[-] uses
allegro5 in '../lib/allegro5.pas',
al5image in '../lib/al5image.pas',
al5strings in '../lib/al5strings.pas';
La cuestión es que, desde ese momento, algunos programas no los compila. Parece como si el compilador haya dejado de detectar cualquier unidad que no esté tenga "in" aunque se encuentre en el directorio. Y además, si alguna unidad es usada por más unidades, y estas tienen también "in", entonces se queja porque debería haber un punto y coma en vez del "in" (o sea, que en un proyecto sólo puede haber un "in" por unidad usada).
No sé si me he explicado, pero es un dolor. Estoy por quitar todos los "in" porque parece que sí compilan, pero claro, la gente cuando abra los proyectos con Delphi y vea esos
falsos errores pues no sé qué van a pensar...
¿Alguna solución?