libstdC++在同一台机器上的64位和32位版本

问题描述:

我正在尝试为64位平台交叉编译我的软件版本。我可以在同一台机器上安装32位和64位版本的libstdC++,而不用担心打破我的Linux安装。 Os是32位ubuntu。libstdC++在同一台机器上的64位和32位版本

我还没有交叉编译过,只是想检查一下,如果我为相应的CPU设置了我的CFLAGS和LDFLAGS 我应该没问题,一旦我安装了正确版本的libstdC++。

我检查的Ubuntu的64位版本,但是这有一个符号链接

lib64下 - > LIB

这会弄糟很多,如果这是一个32位的机器上的情况下,也有人知道如何解决这?

我打的那一刻

[exec] /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.2.4/libstdc++.so 
[exec] /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.2.4/libstdc++.a 
when searching for -lstdc++ [exec] /usr/bin/ld: skipping incompatible 

和下面的错误等等,直到

[exec] /usr/bin/ld: cannot find -lstdc++ 
[exec] collect2: ld returned 1 exit status 

这似乎是由于事实上我没有64位版本libstdC++

+0

由于某种原因,它似乎像一些,如果不是全部,我 Unbuntu发行版缺乏lib64下。不要自己使用它,但在这里有关于64位库的问题。反正toucan都安装了,理论上没有问题。 – 2009-02-11 14:25:46

当然可以。

分别将它们分别放入/usr/lib/usr/lib64

不能检查它Ubuntu,但Fedora他们到那里从一包:

[~#] repoquery -q -l libstdc++.i386 
/usr/lib/libstdc++.so.6 
/usr/lib/libstdc++.so.6.0.10 

[~#] repoquery -q -l libstdc++.x86_64 
/usr/lib64/libstdc++.so.6 
/usr/lib64/libstdc++.so.6.0.10 
+1

我会让他们知道这是否在默认情况下在Ubuntu上发生? – 2009-02-11 14:03:37