0

我正在尝试在我的 mac os x El Capitan 上编译 gammu 1.38.5,并通过我在 Gammu 文档中找到的学习指令支持 postgresql 本机库。

我安装了 PostgreSQL 9.4 并将我的 Mac OS X 作为数据库服务器运行。创建 smsd 数据库和用户以支持 Gammu SMS 网关服务。PostgreSQL 安装在 Mac OSX 的默认位置 /Library/PostgreSQL/9.4 中。include 和 lib 目录可以在这里找到。

我已经设置 POSTGRESQL_PATH 指向 /Library/PostgreSQL/9.4 然后将其导出到 shell,我检查了 FindPostgres.cmake,确保包含的文件 libpq-fe.h 在这里,然后运行 ​​cmake 来配置它。

我尝试将 cmake 与 set 启用的 postgresql 一起使用:

sudo cmake -DWITH_MYSQL=OFF -DWITH_Postgres=ON -Wno-dev

cmake没有找到我的postgresql默认安装,显示:

-- Could not find PostgreSQL

我想可能已经在命令行中手动指定了 include/lib 的位置。

我尝试过了:

 sudo cmake -DWITH_MYSQL=OFF -DWITH_Postgres=ON -Wno-dev -DWITH_POSTGRES_INCLUDE_DIR=/Library/PostgreSQL/9.4/include -DWITH_POSTGRES_LIBRARY=/Library/PostgreSQL/9.4/lib

cmake 仍然找不到我指定的 postgresql 包含/lib,显示:

-- Could not find PostgreSQL

并在最后显示更多信息:

CMake Warning:
  Manually-specified variables were not used by the project:

  WITH_POSTGRES_INCLUDE_DIR
  WITH_POSTGRES_LIBRARY

如果不能使用手动变量,如何将环境变量传递给 cmake?

4

1 回答 1

1

以下应该工作:

cmake -DPOSTGRES_CONFIG_PREFER_PATH=/Library/PostgreSQL/9.4/bin/

无论如何,查找应该在未来版本中更好地工作,请参阅https://github.com/gammu/gammu/commit/d9d09574be1d0afa0609626d3bd6f604be31b8d4

于 2017-11-08T15:55:59.423 回答