首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >找不到-lmysqlclient

找不到-lmysqlclient
EN

Stack Overflow用户
提问于 2010-11-17 04:29:56
回答 4查看 22.8K关注 0票数 14

我正在尝试编译一个C++程序和其中一个类的用途。我猜g++找不到这些库。我用来编译的命令是-

g++ c1.cpp c2.cpp c3.cpp c4.cpp -o c4 -lm -lmysqlclient

c3.cpp是需要mysql.h的文件。这个在我的本地机器上运行得很好,但由于出现错误而拒绝在服务器上运行

cannot find -lmysqlclient

我尝试使用find命令在服务器上查找libmysqlclient.so文件,但我认为它们不在那里

uname -a

显示

SunOS opteron 5.10 Generic_139556-08 i86pc i386 i86pc
user@opteron 12:26:02 ~/c++/projname/

我意识到我需要链接一些库,但是在哪里以及如何链接呢?

任何帮助都将不胜感激。谢谢。

EN

回答 4

Stack Overflow用户

发布于 2016-04-04 19:15:43

您认为没有安装的任何库包都可以使用sudo apt-get install进行安装。但问题是要找到apt-get能够理解的包的正确名称。那么该怎么做呢?!简单

使用命令:sudo apt-cache search <filename>

例如:在本例中为lmysqlclient

sudo apt-cache search mysqlclient

(记住从实际名称中排除'l‘,即mysqlclient而不是lmysqlclient)。这将输出以下内容:

libmysqlclient-dev - MySQL database development files

上面的-libmysqlclient-devapt-get可以识别并解决我们的cannot find lmysqlclient问题的名称

所以现在输入:sudo apt-get install libmysqlclient-dev from interface。完成后,尝试制作所需的文件。

票数 12
EN

Stack Overflow用户

发布于 2018-06-06 22:04:52

简化@SriHariY.S的答案--

尝试使用sudo apt-get install libmysqlclient-dev安装它。

票数 4
EN

Stack Overflow用户

发布于 2010-11-17 19:35:35

你有MySQL客户端库吗?你能像这样找一下吗?

find / -name "libmysqlclient.so" -type f -print 2>/dev/null

此外,还可以在链接器上使用-R标志将libmysqlclient硬链接为

g++ -R/usr/local/mysql/lib ....

或者,您可以将LD_LIBRARY_PATH_32LD_LIBRARY_PATH_64导出为

export LD_LIBRARY_PATH_32=$MYSQL_HOME/lib

厄科,

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

https://stackoverflow.com/questions/4198623

复制
相关文章

相似问题

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