2009-02-11 150 views
6

我正在嘗試爲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

回答

4

當然可以。

分別將它們分別放入/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

相關問題