2012-03-06 82 views
4

我正在嘗試使用gcc的-sysroot選項進行交叉編譯。然而,當試圖(尤其libpthread.so或libc.so)針對鏈接腳本鏈接,我得到使用包含絕對路徑的鏈接器腳本進行交叉編譯

$CTC_PATH/bin/ld: skipping incompatible /lib/libc.so.6 when searching for /lib/libc.so.6 
$CTC_PATH/bin/ld: cannot find /lib/libc.so.6 

基本上裝載器腳本包含絕對路徑,而現在它正試圖對我的主機系統的鏈接位於這些路徑上的庫。我通過刪除絕對路徑解決了這個問題。

有誰知道另一個修復這個問題,不涉及編輯鏈接腳本。

謝謝。

回答

0

我不知道如何說服GCC這樣做,但鏈接器的前綴可以被--rlink-path/path/to/prefix選項覆蓋。

我認爲有一些gcc param將參數傳遞給ld。

+0

-Wloption,選項將選項傳遞給鏈接器 – user364952 2012-03-07 01:05:16