No dudes en compartir nuestros tutoriales y códigos con tus amigos, apóyanos para hacer crecer esta comunidad.
Solución:
Por alguna razón, el archivo no se encuentra en el sistema.
Como estás usando apt-get
el sistema es dpkg
basado, presumiblemente en Debian o su derivado. Puede probar la búsqueda de paquetes de Ubuntu para obtener qué paquete contiene un archivo con nombre terminando enlibpq-fe.h
.
Encontré que el paquete es libpq-dev
y la ruta absoluta del archivo es /usr/include/postgresql/libpq-fe.h
.
FWIW, en un dpkg
basado en el sistema, puede verificar qué paquete proporciona un archivo si conoce la ruta absoluta del archivo:
% dpkg -S /usr/include/postgresql/libpq-fe.h
libpq-dev: /usr/include/postgresql/libpq-fe.h
También, a diferencia find
, locate
mantiene un caché de archivos encontrados (mlocate.db
) que se crea todos los días a través de cron
; por lo que si el archivo se elimina después de la última ejecución, puede ejecutar locate libfq-fe.h
para obtener la ruta absoluta al archivo sin necesidad de verificar la búsqueda de paquetes de Ubuntu en línea.
Entonces el paquete es libpq-dev
. Ahora, reinstalarlo hará que todo vuelva al estado predeterminado, es decir, todos los archivos relevantes se copiarán en los lugares correctos. Como es solo un paquete de biblioteca, no se anulará ninguna configuración a nivel de usuario/sistema (y dpkg
le solicitará una acción para cualquier paquete que haga eso).
Para reinstalar el paquete:
sudo apt-get install --reinstall libpq-dev