我在 ubuntu 上安装了 libpq-dev apt-get install libpq-dev
.我看到它的 header (例如 libpq-fe.h)在/usr/include/postgresql 中。
现在,当我使用 gcc-4.8 编译一个显示 "#include <libpq-fe.h>
的程序时(这是 libpq doco 推荐的),它找不到标题。
现在我知道我可以通过 (a) 将 header 移动到编译器期望的位置或 (b) 告诉编译器在哪里可以找到它们来解决这个问题。但我写的是开源软件,我想尽量减少用户的负担。我希望如果他们以标准方式安装 libpq,那么编译器就会知道如何找到它的 header 。还是我在做梦?
最佳答案
恰好有两种“正确”的方法来查找 Pg header :
- 使用
pg_config
二进制文件告诉您它们在哪里;或 - 使用
pkg_config
前者是特定于 PostgreSQL 的,但可移植。后者需要 pkg_config
,它主要出现在类似 Linux 的平台上,但不太特定于 Pg。
关于c++ - ubuntu 上 libpq header 的 "standard"位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24991326/