我想在Windows 10下使用PostgreSQL设置一个CMake项目。
当我尝试find_package
find_package(PostgreSQL REQUIRED)
我得到以下错误
Could NOT find PostgreSQL (missing: PostgreSQL_LIBRARY) (found version
"10.4")
Call Stack (most recent call first):
C:/Program Files/CMake/share/cmake-3.8/Modules/FindPackageHandleStandardArgs.cmake:377 (_FPHSA_FAILURE_MESSAGE)
C:/Program Files/CMake/share/cmake-3.8/Modules/FindPostgreSQL.cmake:175 (find_package_handle_standard_args)
server/CMakeLists.txt:13 (find_package)
它似乎找到了“10.4”版本,但缺少PostgreSQL_LIBRARY
。
我该怎么解决这个问题?
4条答案
按热度按时间yqyhoc1h1#
我有同样的目标--尝试在CMake项目中使用Windows 10上的PostgreSQL libpq,但我遇到了同样的错误。根据Mike的回复,我在调用
find_package(PostgreSQL REQUIRED)
之前添加了set(PostgreSQL_ADDITIONAL_VERSIONS "14")
,并可以确认这修复了问题。只是确认Mike的解决方案对我有效。oknrviil2#
我的FindPostgreSQL.cmake有这样的注解:
高温
麦克
km0tfn4u3#
将PostgreSQL lib、bin、include目录添加到环境变量中
kxxlusnw4#
如果您使用自制软件安装/更新了PostgreSQL,这可能会有所帮助。
CMake最近更新了PostgreSQL和自制软件。引用自CMake commit:自14.5起,homebrew使用版本号命名PostgreSQL目录,例如
postgresql@14
。将CMake更新到最新版本为我修复了这个问题。Installing cmake with homebrew**注意:**我的答案与PostgreSQL 14.5之后遇到相同或类似问题的人相关。