何らかの理由で、ファイルがシステムにありません。
apt-get
を使用しているため 、システムはdpkg
ベース、おそらくDebianまたはその派生物。 Ubuntuのパッケージ検索を試して、末尾がのファイルが含まれているパッケージを取得できます。 libpq-fe.h
。
パッケージがlibpq-dev
であることがわかりました ファイルの絶対パスは/usr/include/postgresql/libpq-fe.h
です。 。
FWIW、dpkg
ベースのシステムでは、ファイルの絶対パスがわかっている場合、どのパッケージがファイルを提供するかを確認できます。
% dpkg -S /usr/include/postgresql/libpq-fe.h
libpq-dev: /usr/include/postgresql/libpq-fe.h
また、find
とは異なり 、locate
見つかったファイルのキャッシュを保持します(mlocate.db
)cron
を介して毎日作成されます;したがって、最後の実行後にファイルが削除された場合は、locate libfq-fe.h
を実行できます。 Ubuntuパッケージ検索をオンラインで確認しなくても、ファイルへの絶対パスを取得できます。
したがって、パッケージはlibpq-dev
です。 。これで、再インストールするとすべてがデフォルトの状態になります。つまり、関連するすべてのファイルが適切な場所にコピーされます。これは単なるライブラリパッケージであるため、ユーザー/システムレベルの構成が上書きされることはありません(およびdpkg
それを行うパッケージのアクションを求めるプロンプトが表示されます。
パッケージを再インストールするには:
sudo apt-get install --reinstall libpq-dev