【问题标题】:libPocoMongoDB.so.71: cannot open shared object file: No such file or directorylibPocoMongoDB.so.71:无法打开共享对象文件:没有这样的文件或目录
【发布时间】:2020-10-23 10:45:11
【问题描述】:

我正在使用 poco 库连接到 mongodb。我的代码正在编译,但是在用完文件时它给了我以下错误

./test_mongo: error while loading shared libraries: libPocoMongoDB.so.71: cannot open shared object file: No such file or directory

libPocoMongoDB.so.71 已经存在于 /usr/local/lib

这是我的 C++ 代码

#include "Poco/MongoDB/MongoDB.h"
#include "Poco/MongoDB/Connection.h"
#include "Poco/MongoDB/Database.h"
#include "Poco/MongoDB/Cursor.h"
#include "Poco/MongoDB/Array.h"


int main(int argc, char** argv)
{


    try
    {
            Poco::MongoDB::Connection connection("localhost", 27017);
    }
    catch (Poco::Exception& exc)
    {
            std::cerr << exc.displayText() << std::endl;
    }

    return 0;
 }

我使用下面的命令编译它

g++ -o test_mongo test_mongo.cpp -I/usr/local/include -L/usr/local/lib/ -lPocoMongoDB -lPocoNet -lPocoFoundation

【问题讨论】:

  • 你可以试试这些命令:“ldconfig -v|grep libPocoMongoDB”看看是否找到了lib,然后“ldd /usr/local/lib/libPocoMongoDB.so.71”看看是否有缺少依赖项。
  • 谢谢。我尝试了 ldconfig 命令,它找到了所有依赖项。另外还找到了另一种方法,只需将所有库从 /usr/local/lib 移动到 /usr/lib。

标签: mongodb poco poco-libraries


【解决方案1】:

有两种解决方法

  1. 试试 ldconfig 命令。
  2. 只需将所有库从 /usr/local/lib 移动到 /usr/lib。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-12
    • 2018-11-26
    • 2019-11-27
    • 2020-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多