<ก่อนหน้านี้ | Contents | ถัดไป>
6.13.1. การติดตั้ง Readline
การติดตั้ง Readline ใหม่จะทำให้ไลบรารีเก่าถูกย้ายไปที่ .เก่า. แม้ว่าปกติจะไม่เป็นปัญหา แต่ในบางกรณีก็อาจทำให้เกิดจุดบกพร่องในการเชื่อมโยงได้ ldconfig. นี้สามารถหลีกเลี่ยงได้โดยการออกสอง seds ต่อไปนี้:
sed -i '/MV.*old/d' Makefile.in
sed -i '/{OLDSUFF}/c:' รองรับ/shlib-install
sed -i '/MV.*old/d' Makefile.in
sed -i '/{OLDSUFF}/c:' รองรับ/shlib-install
เตรียม Readline สำหรับการรวบรวม:
./configure --prefix = / usr
\
./configure --prefix = / usr
--disable-คงที่ \
--docdir=/usr/share/doc/readline-8.0
--disable-คงที่ \
--docdir=/usr/share/doc/readline-8.0
รวบรวมแพ็คเกจ:
ทำให้ SHLIB_LIBS="-L/tools/lib -lncursesw"
ทำให้ SHLIB_LIBS="-L/tools/lib -lncursesw"
ความหมายของตัวเลือก make:
SHLIB_LIBS="-L/tools/lib -lncursesw"
ตัวเลือกนี้บังคับให้ Readline ลิงก์กับ libncursesw ห้องสมุด.
แพ็คเกจนี้ไม่ได้มาพร้อมกับชุดทดสอบ ติดตั้งแพ็คเกจ:
ทำให้ SHLIB_LIBS="-L/tools/lib -lncursesw" ติดตั้ง
ทำให้ SHLIB_LIBS="-L/tools/lib -lncursesw" ติดตั้ง
ตอนนี้ย้ายไลบรารีไดนามิกไปยังตำแหน่งที่เหมาะสมกว่าและแก้ไขการอนุญาตและลิงก์สัญลักษณ์:
mv -v /usr/lib/lib{readline,history}.so.* /lib chmod -v u+w /lib/lib{readline,history}.so.*
ln -sfv ../../lib/$(readlink /usr/lib/libreadline.so) /usr/lib/libreadline.so ln -sfv ../../lib/$(readlink /usr/lib/ libhistory.so ) /usr/lib/libhistory.so
mv -v /usr/lib/lib{readline,history}.so.* /lib chmod -v u+w /lib/lib{readline,history}.so.*
ln -sfv ../../lib/$(readlink /usr/lib/libreadline.so) /usr/lib/libreadline.so ln -sfv ../../lib/$(readlink /usr/lib/ libhistory.so ) /usr/lib/libhistory.so
หากต้องการ ให้ติดตั้งเอกสาร:
ติดตั้ง -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-8.0
ติดตั้ง -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-8.0