首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows 10上从Visual 2015链接libpqxx

在Windows 10上从Visual 2015链接libpqxx
EN

Stack Overflow用户
提问于 2016-01-03 17:54:45
回答 2查看 4.6K关注 0票数 1

最近,我决定试用PostgreSQL作为我正在开发的一些C++的数据库平台。我决定使用libpqxx作为我的项目的连接库,并很快发现从VS 2015到Windows 10机器,这将是一场艰难的战斗。

经过多次咬牙和咬指甲之后,我在Windows 10上编译了libpqxx。

根据libpqxx的文档,我还将libpq.dll的副本放在项目的可执行目录中。请注意:我在调试和发布版本时都这样做过,试图同时构建这两种版本,并得到了相同的结果。

我看到的所有教程似乎都表明,库可以在链接之后使用,只需简单地包括pqxx/pqxx,所以我设置了一个小项目来完成这个任务。我收到错误:

致命错误C1083:无法打开包含文件:'pqxx/pqxx':没有这样的文件或目录

当试图构建项目时。我也尝试过这将调试和发布构建,但没有效果。

这是我的链接器设置的屏幕截图

有人对我如何链接和使用Visual 2015中的这个库有任何建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-04 01:42:16

正如所指出的,这实际上不是链接器错误,而是编译器错误。我需要包含一个实际的标题,Visual需要能够找到这个标题。在将正确的文件夹(在本例中为C:\libpqxx\ include )添加到Visual的“附加包含目录”设置中后,根据C\C++ -> General的建议,程序编译得很好。

供以后参考:在解决初始问题后,我也遇到了未解决的外部链接器错误。这是因为您需要确保也链接到ws2_32.lib和libpq.lib。您还需要将libpq还依赖的其他DLL文件复制到libpqxx lib文件夹中。在我的系统中,我相信它们是ssleay32.dll、libeay32.dll和libintl-8.dll。这些文件位于PostgreSQL安装的根目录下。DLL步骤在libpqxx的INSTALL.txt文件中提到,但是我相信它表明DLL位于我实际找到它们的文件夹下。

票数 1
EN

Stack Overflow用户

发布于 2016-09-12 10:35:54

我也面临着同样的问题。然后我意识到我正在构建,我的应用程序是32位的。我将目标更改为x64,并成功地编译了

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34579664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档