在 g++ 中找不到 -lc 和 -lm操作系统

发布于 2024-12-02 19:07:47 字数 361 浏览 0 评论 0原文

我正在使用 Ubuntu,gcc 和 g++ 工作正常,但今天它显示:

cannot find -lm
cannot find -lc

我搜索并发现它与 /usr/bin/ld 有关。这是一个指向 lbd.bdf 的符号链接(我希望如此)。我将该文件粘贴到一些朋友 PC 的 Ubuntu 目录中。它不起作用。

我发现-lc表示包含静态库libc.a。
类似地,对于 -lm

我在我的 i386-linux-folders 中找到了它们(名称有所不同)。

我尝试了代码块,但出现同样的错误。

I am using Ubuntu and gcc and g++ were working fine but today it showed:

cannot find -lm
cannot find -lc

I searched and found it has something to do with /usr/bin/ld. Which is a symlink (I hope) to lbd.bdf. I pasted that file in the directory from Ubuntu of some friends PC. It didn't work.

I found that -lc means include static library libc.a.
similarly for -lm

I found them in my i386-linux-folders (name was something different).

I tried code blocks but same errors.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

烟火散人牵绊 2024-12-09 19:07:47

编译器找不到静态 glibc,您可能只安装了共享库,请尝试:

yum install glibc-static

The compiler cannot find static glibc, you might have installed only the shared libraries, try:

yum install glibc-static

暖风昔人 2024-12-09 19:07:47

确保您的 libpath(在 g++ 中)指向 libm.a 和 libc.a 所在的目录(使用 -L 选项)

make sure that your libpath (in g++) points to the directory(ies) that libm.a and libc.a are located in (use the -L option)

踏月而来 2024-12-09 19:07:47

ld 是 GNU 链接器。

男人ld
ld 组合了许多目标文件和归档文件,重新定位它们的数据并绑定符号引用。通常编译程序的最后一步是运行 ld。

它用于将您的程序与 C 库和 C 数学库链接。您需要确保安装了libc6-dev

foo@bar: $ dpkg -s libc6-dev

或者更通用的是,确保build-essential,它依赖于一些基本的C包。

foo@bar: $ dpkg -s build-essential

ld is the GNU linker.

man ld
ld combines a number of object and archive files, relocates their data and ties up symbol references. Usually the last step in compiling a program is to run ld.

It is uses to link your program with the C library and the C math library. You need to make sure that libc6-dev is installed:

foo@bar: $ dpkg -s libc6-dev

Or more generic, ensure build-essential, which depends on a handful of essential C packages.

foo@bar: $ dpkg -s build-essential
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文