首页 > 解决方案 > ld:错误:找不到库-lmysqlclient

问题描述

我正在尝试编译我的游戏程序,它给了我这个

root@vps:/usr/src/Sursa/Server/source/game/src # gmake -j20
linking ../game
ld: error: unable to find library -lmysqlclient
c++: error: linker command failed with exit code 1 (use -v to see invocation)
gmake: *** [Makefile:228: ../game] Error 1
root@vps:/usr/src/Sursa/Server/source/game/src #

这是我的库的 Makefile 路径

# mysql
INCDIR += -I../../../extern/mysql
LIBDIR += -L/usr/local/lib/mysq
LIBS   += -lmysqlclient -lz -pthread -lm -lssl -lcrypto
### END

标签: freebsd

解决方案


您需要更新GCC编译器,因为gcc4.9 不支持c++14 的某些功能。

您可以使用搜索 FreeBSD 中的可用软件包

pkg search <package_name>

并安装任何你想要的东西

pkg install <package_name>

注意:如果您的当前用户不是,您可能需要在这些命令之前使用 sudoroot

最后,如果您遇到问题,例如

Fatal error : "some_file"."some_extension" file not found

您可以通过上述命令搜索包名称并安装它们以成功编译。

例如减轻以下错误

fatal error: 'boost/intrusive_ptr.hpp' file not found

你可以安装boost-libs包。


推荐阅读