x86_64 và i386

Dùng FC6 bản x86_64 có cái khùng là, lúc cập nhật, thằng yum nó tải cả x86_64 lẫn i386. Thế là sau mỗi lần cập nhật là lại phải xoá thủ công để tiết kiệm ổ cứng (không biết làm thế có đúng không). Đấy là một cái khùng.

Bọn FC vẫn chỉ chơi với Firefox 1.5. Cũng chả sao, vì thằng Flash chỉ có bản 32bit. Em là em cứ tải bản 2.x nhị phân có sẵn trên mozilla.com về em sài. Nhưng khốn nạn một nỗi là các ứng dụng khác đều là 64bit, thằng xvnkb tất nhiên cũng phải là 64bit. Thế nên mới có chuyện cứ thắc mắc cả buổi sáng là tại sao không gõ được tiếng Việt trên Firefox. Đó là cái khùng thứ 2.

Đến gần hết buổi sáng mới biết là lão Chuối chơi kiểu dùng ld.so.preload. Theo cái đầu óc ngu si không biết gì về cơ chế hoạt động của Linux thì rằng là mỗi chương trình, khi khởi động sẽ ngó cái tập tin /etc/ld.so.preload xem nó có bảo là cần tải thêm thư viện nào không. Hiện tại thì trong tập tin này của mình chỉ có mỗi dòng /lib/xvnkb.so.0.2.9a. Ờ, thế có nghĩa là các chương trình khi bắt đầu chạy đều phải tải thêm thư viện này thì mới gõ được tiếng Việt. Thảo nào, thằng Firefox nó cứ bảo là nó cóc tải được tập tin /lib/xvnkb.so.0.2.9a và nó nhất quyết bỏ qua cho rảnh nợ.

Có vẻ như vấn đề ở chỗ đó. Nếu vậy thì phải kiếm một tập tin xvnkb.so.0.2.9a 32bit. Nghe đồn là lão Chim Cụt Cánh có tạo sẵn gói RPM cho xvnkb. Tin đồn quả không sai, không những thế, lão còn tốt bụng để riêng ra tập tin thư viện, nhưng là phiên bản 0.2.9 chứ không phải là 0.2.9a. Kệ, chắc vẫn dùng được.

Đầu tiên định ghi thêm dòng /usr/local/lib/xvnkb.so.0.2.9 vào tập tin /etc/ld.so.preload. Nhưng làm thế có mà điên! Ờ, vậy thì phải làm riêng một tập lệnh để chạy Firefox. Sau một hồi tìm hiểu thì phát hiện trên đời này có cái biến LD_PRELOAD với chức năng tương tự tập tin /etc/ld.so.preload. Ô kê, vậy em làm tạm một cái tập lệnh như thế lày:

#!/bin/sh
# Hậu quả của việc lỡ dại tải về FC-6-x86_64-DVD.iso
#
lib32file="/usr/local/lib/xvnkb.so.0.2.9"
export LD_PRELOAD=$lib32file:$LD_PRELOAD
exec /opt/firefox/firefox &
export LD_PRELOAD=`echo $LD_PRELOAD | sed -e "s#$lib32file:\?##"`

Hơ hơ, chạy ngon!

Nhưng hơi băn khoăn, chả biết làm như thế thì có ảnh hưởng gì đến hoà bình thế giới không… Hay là vọc thử cái tập tin /opt/firefox/firefox? Nhưng thôi. Nhức đầu lắm! Kệ. Miễn là gõ được tiếng Việt. 😛


Chuyên mục:

,