Per qualche motivo, il file non è presente nel sistema.
Mentre stai usando apt-get
, il sistema è dpkg
basato, presumibilmente Debian o un suo derivato. Puoi provare la ricerca del pacchetto di Ubuntu per ottenere quale pacchetto contiene un file con nome che termina con libpq-fe.h
.
Ho trovato che il pacchetto è libpq-dev
e il percorso assoluto del file è /usr/include/postgresql/libpq-fe.h
.
FWIW, su un dpkg
sistema basato, puoi controllare quale pacchetto fornisce un file se conosci il percorso assoluto del file:
% dpkg -S /usr/include/postgresql/libpq-fe.h
libpq-dev: /usr/include/postgresql/libpq-fe.h
Inoltre, a differenza di find
, find
mantiene una cache dei file trovati (mlocate.db
) che viene creato ogni giorno tramite cron
; quindi se il file viene rimosso dopo l'ultima esecuzione, puoi eseguire locate libfq-fe.h
per ottenere il percorso assoluto del file senza dover controllare la ricerca del pacchetto Ubuntu online.
Quindi il pacchetto è libpq-dev
. Ora, la reinstallazione riporterà tutto allo stato predefinito, ovvero tutti i file rilevanti verranno copiati nei posti giusti. Poiché è solo un pacchetto di libreria, nessuna configurazione a livello di utente/sistema verrà sovrascritta (e dpkg
ti chiederà di agire per qualsiasi pacchetto che lo fa).
Per reinstallare il pacchetto:
sudo apt-get install --reinstall libpq-dev