ฉันจะทำสิ่งนี้“ ติดตั้ง: คุณอาจต้องเรียกใช้ ldconfig”


11

ฉันต้องการติดตั้ง readline บนเซิร์ฟเวอร์ linux เนื่องจากฉันไม่สามารถเข้าถึง sudo ได้ฉันจึงลองทำตามคำแนะนำนี้ และฉันก็มีปัญหา

ฉันได้รับการติดตั้งโดยใช้ ReadLine ./configure, ,make ในตอนท้ายก็ถามฉันmake installinstall: you may need to run ldconfig

คำตอบ:


12

./configure, make, make installฉันได้รับการติดตั้งโดยใช้ ReadLine install: you may need to run ldconfigในตอนท้ายก็ถามฉัน

ดังนั้นคุณเพียงแค่ต้องเรียกใช้คำสั่ง

sudo ldconfig

ldconfig คืออะไร

ldconfig เป็นโปรแกรมที่ใช้ในการรักษาแคชห้องสมุดที่ใช้ร่วมกัน โดยทั่วไปแคชนี้จะถูกเก็บไว้ในไฟล์/etc/ld.so.cacheและระบบใช้ในการแมปชื่อไลบรารีที่แชร์ไปยังตำแหน่งของไฟล์ไลบรารีที่แชร์ที่เกี่ยวข้อง

man ldconfig

 ldconfig - configure dynamic linker run-time bindings

DESCRIPTION
       ldconfig  creates,  updates,  and removes the necessary links and cache
       (for use by the run-time linker,  ld.so)  to  the  most  recent  shared
       libraries  found  in  the directories specified on the command line, in
       the file /etc/ld.so.conf, and in the trusted directories (/usr/lib  and
       /lib).   ldconfig  checks the header and file names of the libraries it
       encounters when determining which  versions  should  have  their  links
       updated.  ldconfig ignores symbolic links when scanning for libraries.

สำหรับข้อมูลเพิ่มเติมดู: What-does-ldconfig-do?


UPDATE: ทางออกสำหรับ -bash: ldconfig: command not found

ดังที่ได้กล่าวไว้ในความคิดเห็นด้านล่างเมื่อคุณecho $PATHให้เงิน

/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

ในขณะที่ldconfigอยู่ใน / sbin ซึ่งอยู่นอกเส้นทางดังนั้นคุณจึงต้องเรียกใช้คำสั่งโดยเส้นทางที่แน่นอนเช่น/sbin/ldconfigหรือแก้ไขเส้นทางของคุณ

ในการแก้ไข PATH ของคุณให้ทำดังต่อไปนี้:

gedit ~/.bashrc

เพิ่มบรรทัด

export PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin

ตอนนี้บันทึกและออกจากนั้นแหล่งที่มา .bashrc

source .bashrc

ดังนั้นตอนนี้คุณสามารถใช้คำสั่งโดยตรง


ฉันใช้คำสั่งเหล่านี้บนเซิร์ฟเวอร์และฉันไม่มีสิทธิ์เข้าถึงรูต มันเป็นไปไม่ได้ที่จะเรียกใช้ sudo ldconfig และเมื่อฉันรันคำสั่ง ldconfig มันก็บอกว่า -bash: ldconfig: ไม่พบคำสั่ง
Mehrshad

การส่งออกของldconfig --version?
Maythux

-bash: ldconfig: ไม่พบคำสั่ง
Mehrshad

ผลลัพธ์ของคำสั่งคืออะไรecho $PATH
Maythux

/ usr / local / bin: / usr / bin: / bin: / usr / local / เกม: / usr / games
Mehrshad
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.