Z nějakého důvodu soubor v systému chybí.
Když používáte apt-get , systém je dpkg založené, pravděpodobně Debian nebo jeho derivát. Můžete zkusit hledání balíčků Ubuntu a zjistit, který balíček obsahuje soubor s názvem končícím na libpq-fe.h .
Zjistil jsem, že balíček je libpq-dev a absolutní cesta souboru je /usr/include/postgresql/libpq-fe.h .
FWIW, na dpkg Pokud znáte absolutní cestu k souboru, můžete zkontrolovat, který balíček dává soubor:
% dpkg -S /usr/include/postgresql/libpq-fe.h
libpq-dev: /usr/include/postgresql/libpq-fe.h
Také na rozdíl od find , find uchovává mezipaměť nalezených souborů (mlocate.db ), který se vytváří každý den pomocí cron; takže pokud dojde k odstranění souboru po posledním spuštění, můžete spustit locate libfq-fe.h abyste získali absolutní cestu k souboru, aniž byste museli kontrolovat online vyhledávání balíčků Ubuntu.
Balíček je tedy libpq-dev . Nyní přeinstalací dostane vše do výchozího stavu, tj. všechny relevantní soubory budou zkopírovány na správná místa. Protože se jedná pouze o balíček knihovny, nebudou přepsány žádné konfigurace na úrovni uživatele/systému (a dpkg vás vyzve k akci pro každý balíček, který to dělá).
Přeinstalování balíčku:
sudo apt-get install --reinstall libpq-dev