【发布时间】: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