Chạy nhị phân Debian i386 trên armel Debian qua qemu


10

Tôi đang cố gắng làm theo hướng dẫn này để thiết lập máy chủ Ventrilo trên SheevaPlug, chạy Debian armel. Trang này nói rằng tôi có thể sử dụng QEMU để chạy tệp nhị phân được tạo cho i386 trên hệ thống cánh tay của mình.

Thiết lập cho qemu nói rằng tôi cần cài đặt qemu, qemu-user và qemu-libc-i386. Tôi đã tìm thấy hai cái đầu tiên trong apt-get , nhưng qemu-libc-i386 không phải là một gói. Vì vậy, tôi đã cố gắng chạy qemu để chạy máy chủ ventrilo như thế này:

# qemu-i386 ./ventrilo_srv
/lib/ld-linux.so.2: No such file or directory

Có vẻ như đó ld-linux.so.2là phiên bản i386 của những gì tôi có trong armel ld-linux.so.3.

Vì vậy, tôi biết cách làm là dành cho một bản phân phối Linux khác, nhưng có vẻ như tôi sẽ có thể chạy nó trong Debian nếu họ có thể trong bản phân phối điên rồ của họ. Có gói nào tôi có thể cài đặt libc-i386 để tôi có thể chạy gói này (tương tự ia32-libs cho hệ thống x64 không?) Tôi đã thử sao chép so.2từ hệ thống i386 khác và điều đó không giúp tôi bất cứ nơi nào


Liên quan đến vấn đề của bạn, nếu bạn không phụ thuộc vào máy chủ VOIP này , có các giải pháp máy chủ VoIP phần mềm miễn phí , một số đã được đóng gói cho Debian / armel.
sr_

Phải- Ý tôi là tôi có thể sử dụng lẩm bẩm hoặc một cái gì đó, nhưng nó nhiều hơn là "tôi có thể làm cho nó hoạt động theo cách này" hơn là tôi cần một giải pháp cho một vấn đề.
muncherelli

Câu trả lời:


4

Có, bạn có thể chạy nhị phân x86 trong QEmu với QEmu chạy trên bộ xử lý ARM. Nó sẽ rất chậm, vì QEmu thực hiện mô phỏng phần mềm của bộ xử lý x86 và bạn có thể thấy mình thiếu RAM, nhưng nó có thể hoạt động.

Các qemu-usergói chứa các máy ảo riêng của mình, tức là một mô phỏng của một bộ xử lý x86 và một số thiết bị phần cứng và một hạt nhân Linux chạy trên harwdare đó. ( qemu-systemGói chứa trình giả lập chỉ phần cứng mà bạn có thể cài đặt hệ điều hành mà bạn chọn.) Bạn vẫn cần phải cài đặt máy ảo với môi trường thời gian chạy, bao gồm /lib/ld-linux.so.2(trình tải động, cần thiết để chạy bất kỳ thực thi được liên kết động nào) và một loạt các thư viện. Đây là những gì qemu-libc-i386gói trên Optware cung cấp. Nó có phần giống với ia32-libscác hệ thống amd64, nhưng điều đó đơn giản hơn nhiều vì bộ xử lý amd64 có thể thực thi các nhị phân i386 nguyên bản; Ở đây bạn cần có các thư viện bên trong VM x86.

Bạn có thể thử lấy qemu-libc-i386gói từ Optware. Định dạng gói Optware rất gần với Debian, vì vậy bạn có thể chuyển đổi ipk thành một deb theo cách thủ công:

mkdir tmp
wget http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable/qemu-libc-i386_2.3.6-1_arm.ipk
tar xzf qemu-libc-i386_2.3.6-1_arm.ipk
ar rc qemu-libc-i386_2.3.6-1_arm.deb debian-binary control.tar.gz data.tar.gz 

Tôi không đảm bảo rằng điều này sẽ làm việc. Bạn có thể cần đảm bảo rằng các phiên bản của QEmu phù hợp.

Nếu cài đặt ipk sửa đổi không hoạt động, hãy thử sao chép nội dung của nó trên hệ thống của bạn. Giải nén data.tar.gzở đâu đó (hoặc nhận cùng một tệp từ một số hệ thống x86 khác), xem postinsttập lệnh trong control.tar.gzđó làm gì và cung cấp các đường dẫn thích hợp qemu-i386.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.