ฉันมีแอปพลิเคชั่น 32 บิต (เรียกว่า uclsyn) ฉันได้รับจากอาจารย์ดาราศาสตร์ ฉันจัดการเพื่อให้มันทำงานบน CentOS ปีที่แล้ว แต่ตอนนี้เมื่อฉันตั้งค่า CentOS VM ใหม่มันจะไม่ทำงานและฉันไม่สามารถหาสาเหตุได้ มันกลับมาพร้อมกับ "ฆ่า"
นี่คือการแลกเปลี่ยนในบรรทัดคำสั่ง:
$ ./uclsyn_linux
Killed
$ ldd ./uclsyn_linux
not a dynamic executable
$ file ./uclsyn_linux
uclsyn_linux: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
บนเครื่องที่ทำงานอยู่ "ldd ./uclsyn_linux" จะส่งคืนรายการการพึ่งพาทั้งหมด ฉันพบแพ็คเกจที่ให้บริการไลบรารีที่ใช้ร่วมกันเหล่านี้และดูเหมือนว่าจะติดตั้งทั้งหมด
แพ็คเกจที่ต้องการ
- libSM-1.1.0-7.1.el6.i686
- libX11-1.3-2.el6.i686
- libgcc-4.4.6-3.el6.i386
- glibc-2.12-1.47.el6_2.9.i686
- libuuid-2.17.2-12.4.el6.i686
- libXau-1.0.5-1.el6.i686
- นอกจากนี้ยังมีไลบรารีจำนวนมากในแอปพลิเคชันที่ฉันได้ตรวจสอบและติดตั้งแล้ว
สภาพแวดล้อมของฉัน
CentOS ทำงานภายใต้ VirtualBox
uname -a
: Linux localhost.localdomain 2.6.32-358.el6.i686 # 1 SMP พฤ. 21 ก.พ. 12:50:49 UTC 2013 i686 i686 i386 GNU / Linux
strace ./uclsyn
ส่งออก? นั่นอาจให้คำแนะนำแก่เราเกี่ยวกับสิ่งที่ขาดหายไปก่อน
strace
โปรแกรมที่ลิงก์ไม่ถูกต้อง