Nếu bạn đang tiến hành cài đặt biên dịch (compile) một ứng dụng 32bit trên hệ thống Linux OS 64 bit thì hẳn bạn sẽ sớm nhận được kiểu thông báo như thế này về ‘crti.o‘ :
/usr/bin/ld: crti.o: No such file: No such file or directory
Nguyên nhân
– Thông thường thư viện ‘crti.o‘ được tìm thấy trong thư mục ‘/usr/lib64/‘ và ‘/usr/lib32/‘. Nhưng khi bạn xài OS Linux 64bit và compile 32bit ứng dụng thì nó không có thư mục /usr/lib32/ sẵn trên OS. Vì vậy bạn cần cài đặt thư viện này dành cho bản 32bit.
Cách xử lý lỗi crti.o
+ RedHat/CentOS
# yum install -y glibc-devel.i686 libgcc.i686 libstdc++-devel.i686 ncurses-devel.i686
+ Ubuntu/Debian
# apt-get install -y libc-dev libc6-dev-mipsel-cross libc6-dev
Đây là một trong những cách giải quyết vấn đề lỗi “crti.o: No such file: No such file or directory” trên. Nếu các bạn vô tình gặp phải lỗi này khi biên dịch các ứng dụng 32 bit trên OS Linux 64bit thì có thể tham khảo cách trên tại Cuongquach.com nhé.