Z jakiegoś powodu brakuje pliku w systemie.
Ponieważ używasz apt-get
, system to dpkg
prawdopodobnie oparte na Debianie lub jego pochodnej. Możesz spróbować wyszukiwania pakietów w Ubuntu, aby dowiedzieć się, który pakiet zawiera plik o nazwie zakończonej na libpq-fe.h
.
Znalazłem pakiet libpq-dev
a bezwzględna ścieżka pliku to /usr/include/postgresql/libpq-fe.h
.
FWIW, na dpkg
oparty na systemie, możesz sprawdzić, który pakiet zawiera plik, jeśli znasz bezwzględną ścieżkę do pliku:
% dpkg -S /usr/include/postgresql/libpq-fe.h
libpq-dev: /usr/include/postgresql/libpq-fe.h
Ponadto, w przeciwieństwie do find
, locate
przechowuje pamięć podręczną znalezionych plików (mlocate.db
), który jest tworzony codziennie przez cron
; więc jeśli plik zostanie usunięty po ostatnim uruchomieniu, możesz uruchomić locate libfq-fe.h
aby uzyskać bezwzględną ścieżkę do pliku bez konieczności sprawdzania wyszukiwania pakietów Ubuntu online.
Więc pakiet to libpq-dev
. Teraz ponowna instalacja przywróci wszystko do stanu domyślnego, tj. wszystkie odpowiednie pliki zostaną skopiowane we właściwe miejsca. Ponieważ jest to tylko pakiet biblioteczny, żadne konfiguracje na poziomie użytkownika/systemu nie zostaną nadpisane (i dpkg
poprosi Cię o podjęcie działania dla każdego pakietu, który to robi).
Aby ponownie zainstalować pakiet:
sudo apt-get install --reinstall libpq-dev