Cabal构建失败:postgresql-libpq-configure-0.11依赖缺失
解决Cabal构建Haskell项目时PostgreSQL依赖缺失问题
问题根源
错误出在postgresql-libpq(postgresql-simple的底层依赖)需要调用系统的pg_config工具,但系统要么未安装PostgreSQL开发库,要么pg_config的路径未被Cabal检测到。
修复步骤
1. 安装PostgreSQL开发依赖包
根据你的操作系统选择对应命令:
- macOS(Homebrew):
brew install postgresql - Debian/Ubuntu系Linux:
sudo apt-get install libpq-dev - RHEL/CentOS系Linux:
sudo yum install postgresql-devel
2. 手动指定pg_config路径(若已安装仍报错)
如果已安装PostgreSQL但Cabal仍找不到pg_config,可手动指定路径:
- 临时生效:构建时通过环境变量指定:
(替换为你实际的PG_CONFIG=/opt/homebrew/bin/pg_config cabal buildpg_config路径,可通过which pg_config命令查询) - 永久生效:编辑
~/.cabal/config文件,添加或修改extra-prog-path字段,填入pg_config所在目录:extra-prog-path: /opt/homebrew/bin
补充说明
你提到的GitHub配置方案核心就是手动指定pg_config路径,之前修改无效大概率是路径填写错误。先通过which pg_config确认正确路径,再对应配置即可。
内容的提问来源于stack exchange,提问作者user51
相关产品推荐
相关产品推荐

