我需要binutils
包中的鏈接器ld
。 但我遠程工作的服務器已經有ld
版本,但它太舊了。apt-get install會替換舊版本嗎?
如果我做
sudo apt-get install binutils
這將取代舊的,可能惹了誰需要這個舊版本的其他用戶?
如果是的話,我怎樣才能得到一個ld
只爲我?
我需要binutils
包中的鏈接器ld
。 但我遠程工作的服務器已經有ld
版本,但它太舊了。apt-get install會替換舊版本嗎?
如果我做
sudo apt-get install binutils
這將取代舊的,可能惹了誰需要這個舊版本的其他用戶?
如果是的話,我怎樣才能得到一個ld
只爲我?
它會爲所有共享同一standart/bin和/ usr/bin的用戶更新ld,除非他們生活在chroot
之內,那麼它根本不會影響他們。
你可以採取更新的二進制,並把在另一個地方(這應該是在你的PATH
),所以你可能mkdir ~/.bin
,所有其他目錄之前將其添加到PATH和用新鮮ld
。
但是這種方式很弱,因爲每次你想更新ld
時都需要手動更新它。
因此,最好的辦法是讓所有用戶都在自己的chroot服務器上(這也會增加安全性,因爲您的代碼與他們的代碼分離,反之亦然),並在您需要時在您的chroot中更新ld
。
是,將取代LD的當前版本
binutils的包中包含: libc6的(> = 2.11)
的zlib1g(> = 1:1.1.4)
所以,我認爲你需要手動更新ld
問題是我找不到二進制文件,如果我嘗試從源代碼進行編譯,那麼即使您更新了ld,我最終也會得到「此連接器未配置爲使用sysroot」 – anotherCode245
,我認爲這不會影響使用它的用戶, 我對嗎 ? – Redaa
我不知道,我希望如此:) – anotherCode245
有沒有辦法知道我們是否在chroot中? – anotherCode245
我想,你應該看看這個問題:http://unix.stackexchange.com/questions/14345/how-do-i-tell-im-running-in-a-chroot –
順便說一句,我建議只更新爲它在你的問題中描述,除非你完全確定,其他用戶需要老'ld'。 –