【问题标题】:Undefined reference to PQfinish even though libraries etc. are included [duplicate]即使包含库等,也未定义对 PQfinish 的引用 [重复]
【发布时间】:2015-01-24 12:16:47
【问题描述】:

我正在尝试使用 libpq 编译 C++ 应用程序。 在我的 Debian 上,它可以使用以下命令正常编译:

g++ -I /usr/include/postgresql/ -L /usr/lib/postgresql/9.3/lib/ -lpq -o test test.cpp

在我的 Ubuntu 上,我收到以下错误:

undefined reference to 'PQfinish'

我已经包含了指向 postgresql 头文件和库的链接,并使用了 -lpq。我错过了什么?

【问题讨论】:

    标签: c++ postgresql g++ libpq


    【解决方案1】:

    -lpq 移动到命令行末尾。

    链接是按照指定的顺序完成的,只有在需要解析符号时才从库中获取对象。所以每个库都必须在任何其他需要它的对象之后。

    【讨论】:

    • 谢谢。那成功了。奇怪的是它可以在我的 Debian 上运行。
    猜你喜欢
    • 2016-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-27
    • 1970-01-01
    • 2019-11-22
    • 1970-01-01
    • 2018-04-13
    相关资源
    最近更新 更多