mongoDB,c++libmongoclient.so:无法打开共享对象文件:没有这样的文件或目录

mongoDB, c++ libmongoclient.so: cannot open shared object file: No such file or directory

本文关键字:文件 共享 so c++libmongoclient mongoDB 对象      更新时间:2023-10-16

当我在cpp中构建我的cpp项目时。。。这是输出。

**** Build of configuration Debug for project rtbCookieServer ****
make all 
Building file: ../src/rtbCookieServer.cpp
Invoking: GCC C++ Compiler
g++ -I/home/cpp/mongo-cxx-driver-v2.0/mongo -I/home/cpp/mongo-cxx-driver-v2.0 -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/rtbCookieServer.d" -MT"src/rtbCookieServer.d" -o"src/rtbCookieServer.o" "../src/rtbCookieServer.cpp"
Finished building: ../src/rtbCookieServer.cpp
Building target: rtbCookieServer
Invoking: GCC C++ Linker
g++ -L/home/cpp/mongo-cxx-driver-v2.0 -lfcgi++  -lboost_system -lcgicc -lmongoclient -o"rtbCookieServer"  ./src/rtbCookieServer.o   
Finished building target: rtbCookieServer

W=当我运行代码时。。这是我收到的错误消息。

/home/workspace/rtbCookieServer/Debug/rtbCookieServer: error while loading shared libraries: libmongoclient.so: cannot open shared object file: No such file or directory

文件在home/cpp/mongo-cxx-driver-v2.0中,为什么找不到它????

感谢

比使用LD_LIBRARY_PATH更好的是指定运行库搜索

-Wl,-rpath /home/cpp/mongo-cxx-driver-v2.0

有关为什么不使用LD_LIBRARY_PATH的更多信息,请参见此处。

尝试命令

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/cpp/mongo-cxx-driver-v2.0

首先,再试一次。

加载程序不知道库的路径,所以必须告诉它在哪里查找。