คำถามติดแท็ก libraries

ไลบรารีคือชุดของฟังก์ชันที่โปรแกรมสามารถใช้ได้ พวกเขาสามารถโหลดแบบไดนามิกโดยโปรแกรมหรือพวกเขาอาจจะรวบรวมในโปรแกรม

1
ฉันจะรักษา glibc / gcc / … stack ที่แยกต่างหาก (ใหม่กว่า) ได้อย่างไรในรูปแบบที่ไม่ใช่รูทบน Linux
คลัสเตอร์การคำนวณของเรารัน CentOS เวอร์ชันเก่ามากโดยมีเคอร์เนลเก่า (2.6.18) และแน่นอน libs เก่าและไบนารี เนื่องจากการอัปเดตสิ่งทั้งหมดต้องการงานจำนวนมากบนโหนดทั้งหมดนี่ไม่ใช่ตัวเลือก ฉันกำลังพยายามรวบรวมและใช้โปรแกรมที่ต้องการC++11และดังนั้นรุ่นที่ใหม่กว่าของgcc(และ / หรือclang) เนื่องจากฉันไม่ต้องการยุ่งกับระบบเลยฉันต้องการทำสิ่งนี้ในฐานะผู้ใช้ที่ไม่ใช่รูทในทรีไดเรกทอรีในเครื่อง ปัญหาคือที่gccต้องใหม่glibcกว่าที่มีอยู่ในเครื่อง ดังนั้นผมจำเป็นต้องรักษาแยกรุ่นใหม่glibcในท้องถิ่นของฉันlib/ต้นไม้อาจจะเป็นตามที่อธิบายไว้ที่นี่ ที่ฉันหายไปคือวิธีการทำผม "ฝัง" เส้นทางของ libs ท้องถิ่นของฉันในทุกไบนารีที่จำเป็นเช่นgcc, g++ฯลฯ ? การตั้งค่า LD_LIBRARY_PATH กับแผนผังโลคัลของฉันlib/ทำให้ไบนารีระบบทั้งหมดไม่ทำงานอีกต่อไป ( ELF file OS ABI invalid) เพราะพวกเขาต้องการใช้ใหม่libm.so/ libc.soกับที่พวกเขายังไม่ได้รวบรวม ดังนั้นเพื่อตัดมันขึ้น: อะไรคือวิธีการที่เหมาะสมในการรักษาใหม่กองพัฒนาท้องถิ่น (ที่มีglibc, gccฯลฯ ) ในแบบคู่ขนานกับระบบเก่าได้โดยไม่ต้อง messing รอบเป็นราก? ตามคำถามด้านข้าง: การตั้งค่า LD_LIBRARY_PATH จะโพสต์เป็นโซลูชันทั่ว SE เมื่อแยกออกglibcมา สำหรับฉันมันทำให้เกิดข้อผิดพลาดด้านบนเมื่อฉันพยายามรันไบนารีระบบใด ๆ (เช่นls) มาทำไม …

3
จะหาแพ็คเกจ Fedora ที่ต้องพึ่งพาได้อย่างไร?
บางครั้งฉันติดตั้งซอฟต์แวร์ที่ไม่มีอยู่ในที่เก็บและจากนั้นฉันพบปัญหาการพึ่งพาไม่พึงพอใจ ข้อผิดพลาดมักจะบอกฉันว่าไลบรารีหรือคำสั่งใดหายไป yum searchจากนั้นผมทำงาน หากมีชื่อแพ็คเกจตรงกับชื่อไลบรารี / คำสั่งที่ต้องการมันเป็นเรื่องง่าย ปัญหาเกิดขึ้นเมื่อฉันไม่พบสิ่งใดในยำ ฉันเริ่มค้นหาในเว็บและบ่อยครั้งที่ฉันพบลิงค์ไปยังห้องสมุด แต่ฉันไม่รู้ว่าจะเชื่อถือไซต์เหล่านี้ได้ที่ไหนคัดลอกไลบรารี่ถ้าฉันดาวน์โหลดมันควรจะทำยังไงต่อไปเรื่อย ๆ บ่อยครั้งที่มันควรจะเป็นการแจกจ่ายอีกครั้งหรือรุ่น Fedora อื่นและจากนั้นฉันไม่รู้ว่าพวกเขาจะทำงานร่วมกับฉันหรือไม่ ฉันสงสัยว่าห้องสมุดเหล่านี้อาจมีอยู่ในแพ็คเกจบางส่วนที่มีอยู่แล้วในที่เก็บและฉันค่อนข้างจะมีพวกมันจากที่นั่นมากกว่าจากไซต์ Googled แบบสุ่ม ฉันจะทราบได้อย่างไรว่าห้องสมุดใดเป็นของแพคเกจถ้าฉันมีชื่อ? ตัวอย่างเช่นตอนนี้ฉันต้องการไลบรารี่ libpng12.so.0 ฉันจะหามันได้อย่างไร และถ้าไม่ใช่ไลบรารี แต่เป็นคำสั่งฉันจะค้นหาแพ็คเกจที่ให้ได้อย่างไร
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.