gcc 错误“/usr/bin/ld: 找不到 -lstdc++”

Posted

技术标签:

【中文标题】gcc 错误“/usr/bin/ld: 找不到 -lstdc++”【英文标题】:gcc error "/usr/bin/ld: cannot find -lstdc++" 【发布时间】:2015-08-01 09:59:15 【问题描述】:

我在 64 位系统上有 32 位库,所以在使用 32 位库编译代码时,我通过了 -m32 但这会导致另一个错误提示

/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libstdc++.so when searching for -lstdc++

/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libstdc++.a when searching for -lstdc++

/usr/bin/ld: cannot find -lstdc++

collect2: error: ld returned 1 exit status

如何解决?

【问题讨论】:

你没有安装 32 位库,包名为 libstdc++(version);此外,-dev 包可能会有所帮助 我安装了 g++-4.6-multilib、ia32-libs-dev、lib32bz2-dev、libc6-dev-i386 和 lib32z1-dev。问题依然存在 是否存在类似/usr/lib/gcc/x86-linux-gnu/*/libstdc++.so 的东西?我不确定 x86-linux-gnu 三元组,但在 multilib 系统中,必须有另一个目录而不是 x84_64 【参考方案1】:

如果你知道 32 位库的安装位置,可以在 -lstdc++ 之前添加 -L/path/to/library/directory

【讨论】:

以上是关于gcc 错误“/usr/bin/ld: 找不到 -lstdc++”的主要内容,如果未能解决你的问题,请参考以下文章

/usr/bin/ld: 找不到 -lpython2.7

Makefile 错误:/usr/bin/ld: 找不到 -lsqlite3

编译错误:/ usr / bin / ld:找不到-lclntsh

使 Qt 应用程序在 fedora 20 上失败:/usr/bin/ld: 找不到 -lGL

/usr/bin/ld: 找不到 -lXext 依赖问题

/usr/bin/ld: 找不到 -ldlib /usr/bin/ld: 找不到 -lcblas /usr/bin/ld: 找不到 -llapack